मैं वाहन को एक बिंदु तक कैसे ले जा सकता हूं और ओवरसोलेटिंग या दोलन के बिना रुक सकता हूं?


9

ठीक है तो विचार करें कि हमारे पास एक वाहन जैसा है जिसे मैंने इस प्रश्न के उत्तर में वर्णित किया है , एक 2 डी स्थिति, वेग, कोणीय वेग और खींचें / घर्षण के साथ। यह एक चर राशि से गति और विराम कर सकता है, लेकिन तुरंत मृत नहीं होगा या शीर्ष गति तक तुरंत पहुंच सकता है। ओवरसोलेटिंग या दोलन के बिना - मैं इसे किसी विशेष बिंदु पर कैसे ले जा सकता हूं और सबसे तेजी से संभव समय में रोक सकता हूं?

मैं कुछ सोच रहा था:

  • लक्ष्य स्थिति की ओर मुड़ें।
  • में तेजी लाने के
  • 1 टिक को आगे देखें, "अगर मैंने अगले टिक को लागू किया, तो क्या मैं लक्ष्य का निरीक्षण करूंगा?"
  • यदि यह ओवरशूट करेगा, तो कुछ राशि से अब ब्रेक लागू करें।

मुझे यकीन है कि यह एक हल की गई समस्या है और मेरे द्वारा वर्णित की तुलना में एक बेहतर तरीका है।

जवाबों:


4

1
Boids या Space जहाजों के लिए बढ़िया, लेकिन उन्हें वाहन भौतिकी में लागू करने के लिए आपको परिणामी वेक्टर की व्याख्या करनी होगी, और आप फिर से मूल समस्या पर लौट आएंगे।
दस

3

कलन का उपयोग करना, यदि आप अपने वेग और अधिकतम मंदी दर को जानते हैं तो आप अपनी न्यूनतम रोक दूरी जान सकते हैं। इसे ध्यान में रखते हुए, आप निश्चित रूप से जान सकते हैं कि आपको एक निश्चित बिंदु पर रुकने के लिए ब्रेक (राउंडिंग / क्वांटिसाइजेशन त्रुटियों को एक तरफ) लागू करने की आवश्यकता है या नहीं।

अब, उम्मीद है कि गणित में मुझसे बेहतर कोई और वास्तविक फॉर्मूला पोस्ट करेगा ...


2
finalPositionDelta = -0.5 * sqr(currentSpeed) / maximumDecelerationहालाँकि यह मानता है कि आपका मंदी एक स्थिर है, जो आपके सिमुलेशन की गहराई के आधार पर हो सकता है। मैं Ranieri के समाधान के साथ जाऊँगा। (जो खेद है कि यह DIV मंदी है,
खच्चर

हाँ, यह विधि अभी भी उपयोगी है, भले ही आप इसे एक नियंत्रण प्रणाली समस्या के रूप में फ्रेम करते हों, क्योंकि इसमें शामिल ग्रेडिएंट को समझने में त्रुटि माप में अस्थिरता या दोलन से बचने में मदद करनी चाहिए।
काइलोटन

3

यह एक नियंत्रण समस्या है। आपको अपने इनपुट को आनुपातिक रूप से कुछ "त्रुटि" माप के अनुसार अलग-अलग करना होगा, जैसे लक्ष्य की दूरी। इस प्रश्न के उत्तर भी देखें।

लक्ष्य ट्रैकिंग: एक घूमने वाले बुर्ज में तेजी और गिरावट कब आती है?


1

कभी-कभी, खेल के विकास में, आपको शॉर्टकट लेने की आवश्यकता होती है। यहां के शॉर्टकट को एक आवेग कहा जाता है, जो शारीरिक रूप से बहुत कम समय में लागू होने वाला एक बहुत बड़ा बल है। समय के साथ इसे एकीकृत करने के बजाय, आप इसे पैरामीटर पर प्रत्यक्ष परिवर्तन के रूप में लागू करते हैं: वेग को 0 पर सेट करें।

सवाल यह है: क्या आप शॉर्टकट का उपयोग करना चाहते हैं या नहीं?


2
अगर यह खिलाड़ी के लिए अदृश्य है तो मैं शॉर्टकट लेने के बारे में चिंतित नहीं हूं, लेकिन अगर कोई वाहन मौके पर मृत हो सकता है तो यह बहुत अजीब लगेगा।
इयान

1
यह निश्चित रूप से सच है, हालांकि यह उस बिंदु पर सटीक रूप से रोकने में मदद करता है जिसे आप एक मंदी के बाद चाहते हैं, इस प्रकार जटिल गणना से बचें और अपने समय कदम को कई बार विभाजित करें।
ADB
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.