আমার স্থির অবজেক্ট এবং অস্থাবর বস্তু রয়েছে। সংঘর্ষগুলি পৃথকীকরণ-অক্ষ-উপপাদ ব্যবহার করে সনাক্ত করা হয়।
উদাহরণস্বরূপ, এই পরিস্থিতিতে আমার কাছে দুটি স্থিতিশীল বস্তু রয়েছে (লাল):
এবং উভয়ের মধ্যে একটি অস্থাবর বস্তু:
আমার অ্যালগরিদম এই দুটি বস্তুর মধ্যে সংঘাতের গণনা করতে সক্ষম, এবং এটি সংযোগের জন্য একটি নিখুঁত রেজোলিউশন ভেক্টর (যার অর্থ একটি ন্যূনতম-স্থানচ্যুতি-ভেক্টর )ও ফেলে দেয়।
সুতরাং উদাহরণস্বরূপ, আমি যখন সবুজ আয়তক্ষেত্র এবং ডান লাল আয়তক্ষেত্রের মধ্যে সংঘাতটি পরীক্ষা করি, তখন অ্যালগরিদম একটি ভেক্টরকে বাইরে বের করে দেয় যা আমাকে বলে যে সংঘর্ষটি সমাধান করার জন্য আমাকে কীভাবে সবুজ আয়তক্ষেত্রটি সরানো দরকার:
লক্ষ্য করুন যে আমি এমএসপেইন্টে এটি খুব দ্রুত তৈরি করেছি, তাই সেই চিত্রটিতে এটি হতে পারে যে ন্যূনতম অনুবাদ-ভেক্টর সবুজ আয়তক্ষেত্রটিকে উপরের দিকে ঠেলে দেয় তবে আমি এখানে ধরে নিতে চলেছি যে এটি বামে / বাইরে সরিয়ে নিয়ে যাচ্ছে ডান আসলে সংক্ষিপ্ত।
এটি পৌঁছানোর সাধারণ উপায় হ'ল কেবল একবারে পরিবর্তে সমস্ত ফ্রেমের জন্য একটি সংঘর্ষের সমাধান করা। তবে আমার ক্ষেত্রে, এর ফলে ফ্লিপ-ফ্লপ হবে:
প্রথমত, দ্রাবক দুটি সংঘর্ষ সনাক্ত করে তবে কেবল ডান আয়তক্ষেত্র এবং সবুজ আয়তক্ষেত্রের মধ্যে সংঘর্ষের সমাধান করে:
তারপরে, পরবর্তী ফ্রেমে, এটি কেবলমাত্র একটি সংঘর্ষ সনাক্ত করে যা বাম লাল আয়তক্ষেত্র এবং সবুজ আয়তক্ষেত্রের মধ্যে রয়েছে এবং এর সমাধান করে:
আপনি দেখতে পাচ্ছেন, এটি আসলে সংঘর্ষের সমাধান করে না (উদাহরণস্বরূপ, সবুজ আয়তক্ষেত্রটিকে শীর্ষে ঠেলে দিয়ে) এবং পরিবর্তে কেবলমাত্র দুটি রাজ্যের মধ্যে অসীমভাবে ফ্লপ ফ্লপ করুন।
আমি কীভাবে এটি সমাধান করতে পারি?