प्लेटफार्म और भौतिकी
ये किनारे मामले कई हैं। अच्छे मज़ेदार प्लेटफ़ॉर्मर किसी भी तरह के शारीरिक-सटीक तरीके से व्यवहार नहीं करते हैं, और मारियो जैसे "सही" प्लेटफ़ॉर्मर्स के वर्षों के बाद खिलाड़ियों को जो नियंत्रण और व्यवहार की उम्मीद है, वह सामान्य तकनीकों के साथ लागू करने के लिए अविश्वसनीय रूप से कठिन है जैसे कि आप Box2D या अन्य भौतिकी इंजनों के साथ मिलते हैं। अधिकांश अच्छे प्लेटफ़ॉर्मर्स अपने खिलाड़ी नियंत्रकों में किसी भी प्रकार की सामान्य भौतिकी या टकराव की प्रतिक्रिया का उपयोग नहीं करते हैं।
हल उत्पन्न करें
अपने विशिष्ट प्रश्न के संबंध में, सबसे अच्छा उपाय यह है कि बक्से को अपनी जमीन के रूप में उपयोग करना बंद कर दें। कनेक्टेड लाइन सेगमेंट (एक पतवार) की एक श्रृंखला का उपयोग करें। यह टकराव का पता लगाने के इंजन को वास्तव में चलने योग्य सतहों पर ध्यान केंद्रित करने की अनुमति देता है और एबी और बीसी के बीच मौजूद "नकली" किनारे को नहीं देखता है। जो वास्तव में Box2D करता है। आकृतियों का उपयोग बाहरी सतहों को उत्पन्न करने के लिए किया जाता है, जो एक पतवार बनाने के लिए एक साथ जुड़ी होती हैं।
आपको टाइल-आधारित खेलों में भी इसकी आवश्यकता है, या उन स्थितियों में जहां आपके पास फर्श के रूप में अन्य अभिनय के बगल में दो एएबीबी ऑब्जेक्ट हैं। टक्कर इंजन उन ऊर्ध्वाधर किनारों को उठाएगा और खिलाड़ी को उन पर पकड़ने का कारण बनेगा। ऐसे हैक हैं जो मदद कर सकते हैं, लेकिन समस्या को खत्म नहीं कर सकते। इसका समाधान सिर्फ एक एकल खंड है जिसमें पूर्ण 2D बॉक्स की बजाय सतह का प्रतिनिधित्व होता है।
आप एक दूसरे के खिलाफ बहुभुज को क्लिप करके और एक किनारे की सूची में क्लिप बिंदुओं को जोड़कर सामान्य मामले में पतवार उत्पन्न कर सकते हैं।
झुका हुआ सतसंग
चूँकि आपके उदाहरण में एक ढलान शामिल है और आप पुनर्स्थापन और अन्य भौतिक गुणों का उल्लेख कर रहे हैं, इसलिए मैं कुछ अन्य समस्याओं की ओर ध्यान दिलाता हूँ, जिन्हें आप जल्द ही नोटिस करने जा रहे हैं, जो आगे बताती हैं कि क्यों सामान्य टक्कर का पता लगाने और प्रतिक्रिया प्लेटफ़ॉर्मर्स के लिए अच्छी तरह से काम नहीं करती है। सबसे पहले, एंगल्ड प्लेटफॉर्म पर खड़े होने की कोशिश करें, कूदें और फिर लैंड करें। आपको इस बात की संभावना होगी कि पात्र उतरते समय थोड़ा "स्लाइड" करेगा। समस्या यह है कि जो संपर्क आप उत्पन्न कर रहे हैं वह आमतौर पर एंगल्ड सतह से इंगित होने वाला है। फिर, टकराव का समाधान करते समय, खिलाड़ी को उस दिशा में धकेल दिया जाता है। भले ही चरित्र सीधे नीचे गिर गया था, लेकिन लैंडिंग के दौरान उसे ऊपर और थोड़ा सा दाईं ओर धकेल दिया जाएगा, जिसके परिणामस्वरूप स्लाइड होगी। यह सापेक्ष वेगों को ध्यान में रखकर हैक किया जा सकता है,
दूसरी समस्या जिसे आप नोटिस करने जा रहे हैं, जिसे ठीक करना बहुत कठिन है, यह तब होता है जब आप एक रैंप से जल्दी भागने की कोशिश करते हैं। खिलाड़ी रैंप के नीचे "हॉप" करने जा रहा है। यह आज भी ज्यादातर AAA खेलों में दिखाई देता है। यह न केवल मूर्खतापूर्ण दिखता है, लेकिन अगर आपके खेल को कूदने के लिए खिलाड़ी को जमीन पर पैर रखने की आवश्यकता होती है, तो रैंप से नीचे भागना और आधा नीचे कूदना मुश्किल हो जाता है, क्योंकि खिलाड़ी केवल एक छोटे से हिस्से के दौरान रैंप से संपर्क कर रहा है। समय इसे नीचे जा रहा है। एक सरल तय यह है कि खिलाड़ी के हिलने पर कुछ किरण डाली जाए, और खिलाड़ी की स्थिति को निकटतम सतह (अगर यह खिलाड़ी के बहुत करीब है) को स्नैप करें यदि खिलाड़ी कूद नहीं रहा है और पहले जमीन पर था।
आप यह भी पा सकते हैं कि खिलाड़ी ने रैंप को चलाने के दौरान हवा में लॉन्च किया यदि आप खिलाड़ी पर वेग, घर्षण, और बहाली की कोशिश करते हैं जैसे कि वह एक सामान्य कठोर शरीर था। जब तक गिरने / कूदने के लिए खिलाड़ी के आंदोलन को क्षैतिज आंदोलन के लिए विवश किया जाना चाहिए। बेशक, यदि आप बड़े स्वर्ण-आयु वाले प्लेटफॉर्म खेलते हैं, तो आप देख सकते हैं कि खिलाड़ी का क्षैतिज वेग अक्सर क्षैतिज और ढलान वाली सतहों के बीच स्थिर होता है। इस तरह से ढलान के साथ-साथ चलने पर भी ध्यान रखना चाहिए।
वहाँ अन्य विषम कोने के मामलों की एक संख्या होने जा रही है आप अंततः में भी चलेगा। यदि आप एक अच्छा प्लेटफ़ॉर्मर बनाने की कोशिश कर रहे हैं, तो यह वास्तव में जेनेरिक भौतिकी और टकराव प्रतिक्रिया एल्गोरिथ्म पर भरोसा करने के बजाय, भौतिक विज्ञान से अलग एक प्लेटफ़ॉर्मर प्लेयर कंट्रोलर को लागू करने और आंदोलन और नियंत्रण के व्यवहार को हार्डकोड करने के लिए सबसे अच्छा है।