আমার এএবিবি সংঘর্ষের রেজোলিউশনে সমস্যা আছে।
আমি প্রথমে এক্স অক্ষটি সমাধান করে, তারপরে Y অক্ষটি সমাধান করে AABB ছেদটি সমাধান করি resolve এই বাগটি প্রতিরোধ করার জন্য এটি করা হয়: http://i.stack.imgur.com/NLg4j.png
বর্তমান বিষয়টি ঠিকঠাকভাবে কাজ করে যখন কোনও বস্তু প্লেয়ারে চলে আসে এবং প্লেয়ারটিকে অনুভূমিকভাবে ঠেলে দিতে হয়। আপনি যেমন। জিআইএফ-তে দেখতে পাচ্ছেন, অনুভূমিক স্পাইকগুলি প্লেয়ারটিকে সঠিকভাবে ঠেলা দেয়।
উল্লম্ব স্পাইকগুলি যখন প্লেয়ারে চলে যায় তবে এক্স অক্ষটি এখনও প্রথমে সমাধান করা হয়। এটি "লিফট হিসাবে স্পাইকগুলি ব্যবহার করা" অসম্ভব করে তোলে।
খেলোয়াড় যখন উল্লম্ব স্পাইকগুলিতে চলে যায় (মাধ্যাকর্ষণ দ্বারা প্রভাবিত হয়, সেগুলির মধ্যে পড়ে) তখন তিনি Y অক্ষের উপরে ঠেলাঠেলি করে, কারণ X অক্ষের সাথে শুরু করার জন্য কোনও ওভারল্যাপ ছিল না।
আমি যা কিছু চেষ্টা করেছি তা হল এই লিঙ্কটির প্রথম উত্তরে বর্ণিত পদ্ধতি: 2 ডি আয়তক্ষেত্রাকার বস্তুর সংঘর্ষ সনাক্তকরণ
তবে স্পাইকস এবং চলন্ত বস্তুগুলি তাদের অবস্থান পরিবর্তন করে, গতিবেগের পরিবর্তে নাড়াচাড়া করে এবং তাদের আপডেট () পদ্ধতিটি না বলা পর্যন্ত আমি তাদের পরবর্তী ভবিষ্যদ্বাণীযুক্ত অবস্থান গণনা করি না। বলা বাহুল্য এই সমাধানটিও কার্যকর হয়নি। :(
উপরের বর্ণিত দুটি মামলাই যেমন কাজ করেছে তেমনভাবে আমাকে এএবিবি সংঘর্ষের সমাধান করতে হবে solve
এটি আমার বর্তমান সংঘর্ষের উত্স কোড: http://pastebin.com/MiCi3nA1
কেউ যদি এটি সন্ধান করতে পারে তবে আমি সত্যিই কৃতজ্ঞ হব, যেহেতু এই বাগটি শুরু থেকেই ইঞ্জিনে উপস্থিত ছিল, এবং কোনও সাফল্য ছাড়াই আমি একটি ভাল সমাধানের জন্য লড়াই করে যাচ্ছি। এটি আমাকে গুরুতরভাবে সংঘর্ষের কোডটি দেখার জন্য রাত কাটাচ্ছে এবং আমাকে "মজাদার অংশে" যেতে এবং গেমটির যুক্তি কোডিং করতে বাধা দিচ্ছে :(
আমি এক্সএনএ অ্যাপহব প্ল্যাটফর্মার ডেমো (একইসাথে বেশিরভাগ স্ট্যাটাসের অনুলিপি-পেস্ট করে) একই সংঘর্ষের সিস্টেমটি প্রয়োগ করার চেষ্টা করেছি। তবে "গেমিং" বাগটি আমার গেমটিতে ঘটে, যদিও এটি অ্যাপহব ডেমোতে ঘটে না। [জাম্পিং বাগ: http://i.stack.imgur.com/NLg4j.png ]
লাফানোর জন্য আমি প্লেয়ারটি "অনগ্রাউন্ড" কিনা তা পরীক্ষা করে দেখুন, তারপরে ভেলোসিটি.ওয়াই-তে যুক্ত করুন।
যেহেতু প্লেয়ারটির वेग.এটি.এটি Velocity.Y এর চেয়ে বেশি।
আমি বিশ্বাস করি এটি অ্যাপহাব ডেমোতে ঘটে না কারণ প্লেয়ারের বেগ। এক্স কখনও ভোলসিটি-ওয়াইয়ের চেয়ে বেশি হবে না তবে আমার ভুল হতে পারে।
আমি প্রথমে এক্স অক্ষের উপর সমাধান করে এরপরে Y অক্ষের সাহায্যে সমাধান করেছি। কিন্তু যে স্পাইকগুলির সাথে সংঘর্ষের বিষয়টি আমি উপরে উল্লেখ করেছি।