আমি যে 2 ডি গেমটি তৈরি করছি তাতে সংঘর্ষের সিস্টেমটি প্রয়োগ করার চেষ্টা করছি। পৃথক পৃথক অক্ষের উপপাদ্য (যেমনটি মেটনেটের সংঘর্ষের টিউটোরিয়াল দ্বারা বর্ণিত হয়েছে ) সংঘর্ষ সনাক্তকরণ পরিচালনা করার পক্ষে একটি দক্ষ এবং শক্তিশালী উপায় বলে মনে হচ্ছে তবে তারা যে সংঘর্ষের প্রতিক্রিয়া পদ্ধতি ব্যবহার করেছে তা আমি পছন্দ করি না। অন্তত ওভারল্যাপের অক্ষের সাথে অন্ধভাবে স্থানচ্যুতির মাধ্যমে, অ্যালগরিদম কেবল চলমান বস্তুর পূর্ববর্তী অবস্থানকে উপেক্ষা করে, যার অর্থ এটি স্থিতিস্থানের সাথে এতটা সংঘর্ষ হয় না যতক্ষণ এটি প্রবেশ করে এবং তারপরে বাইরে বেরিয়ে যায়।
এখানে এমন পরিস্থিতির একটি উদাহরণ রয়েছে যেখানে এটি গুরুত্বপূর্ণ matter

উপরে বর্ণিত স্যাট পদ্ধতি অনুসারে, আয়তক্ষেত্রটি কেবলমাত্র তার অনুমানের ত্রিভুজকে লম্ব করে বেরিয়ে যাবে:

তবে, বাস্তবের দিক থেকে, আয়তক্ষেত্রটি ত্রিভুজটির নীচের ডান কোণে থামানো উচিত, কারণ এটি যদি প্রথম স্থানটির সংঘর্ষের স্থান হয় তবে যদি এটি তার স্থানচ্যুতি ভেক্টরের সাথে অবিচ্ছিন্নভাবে চলতে থাকে:

এখন, গেমপ্লে চলাকালীন এটি সম্ভবত তাত্পর্যপূর্ণ নয় তবে আমি এই পদ্ধতিতে দক্ষতার সাথে এবং সাধারণভাবে সঠিক স্থানচ্যুতি অর্জনের কোনও উপায় আছে কিনা তা জানতে আগ্রহী। আমি গত কয়েক দিন ধরে এটি সম্পর্কে আমার মস্তিষ্কগুলি ধরে রাখছি এবং আমি এখনও হাল ছাড়তে চাই না!
(স্ট্যাকওভারফ্লো থেকে ক্রস পোস্ট, আশা করা যায় যে এটি বিধিগুলির বিরুদ্ধে নয়!)
পদক্ষেপ 1: প্রতিটি বহুভুজের জন্য, গতি ভেক্টরের লম্ব লম্বের উপরে বহুভুজের প্রক্ষেপণের পাশাপাশি দুটি দীর্ঘতম পয়েন্ট সন্ধান করুন।
পদক্ষেপ 2: এই পয়েন্টগুলি সংযোগকারী রেখা বরাবর প্রতিটি বহুভুজকে ভাগ করুন। গতি ভেক্টর বরাবর অন্যান্য বহুভুজের মুখোমুখি বহুভুজটির অর্ধেকটি হ'ল "ফরোয়ার্ড হোল"। এটি বহুভুজের একমাত্র অংশ যা সম্ভবত সংঘর্ষে আসতে পারে।
ধাপ 3:বিপরীত বহুভুজের দিকে গতি ভেক্টর বরাবর প্রতিটি বহুভুজের "ফরোয়ার্ড হোল" এর প্রতিটি বিন্দু থেকে একটি ভেক্টর প্রজেক্ট করুন এবং বিপরীত বহুভুজের "ফরোয়ার্ড হাল" এর প্রতিটি প্রান্তের সাথে ছেদ করার জন্য এটি পরীক্ষা করুন। (সম্ভবত ধীরে ধীরে, তবে কম্পিউটারগুলি আজকাল বেশ দ্রুত - ঠিক আছে?) (কাত হওয়া তীরের জন্য দুঃখিত। সমস্ত তীর সমান্তরাল হওয়া উচিত
Step )
পদক্ষেপ 4: সংক্ষিপ্ততম ভেক্টরটি নিন। এটি হ'ল সংঘর্ষের দূরত্ব।
পদক্ষেপ 5: ভয়েলা!
