एकता के साथ एक कूद एनीमेशन कैसे एकीकृत करें

आज मैंने ब्लेंडर में अपना पहला जम्पिंग एनीमेशन पूरा किया, जिसे मैं एकता में एकीकृत करना चाहता था। मुझे लगा कि मुझे बस कुछ करना होगा "ठीक है जब मैं जंपिंग बटन दबाता हूं, तो जंपिंग एनीमेशन को ट्रिगर करता हूं और यही है!"। आस - पास भी नहीं!

मैंने ऐसा किया और नतीजा यह हुआ कि मुझे उम्मीद नहीं थी।

मुझे पूरा यकीन है कि मैंने पहले जो प्रक्रिया बताई थी वह कुछ विशिष्ट मामलों में काम करेगी लेकिन दुख की बात यह है कि मेरा नहीं।

मुझे एक लंबी विधि से गुजरना पड़ा।

एक छलांग में एक त्वरित देखो

एक नियमित छलांग को तीन अलग-अलग चरणों में विभाजित किया जा सकता है:

  • जंप का आवेग: जब हमारा चरित्र आवेग और कूद रहा है।
  • गिरने का चरण: जब हमारा चरित्र हवा में रहते हुए स्थिर रहने की कोशिश कर रहा होता है।
  • लैंडिंग चरण: जब हमारा चरित्र, अभी भी हवा में है, खुद को जमीन तक पहुंचने के लिए तैयार कर रहा है।

यह एक खेल में कैसे काम करता है?

जब खिलाड़ी स्पेसबार को दबाता है (जो स्पष्ट रूप से जंपिंग बटन the) है, तो यह जंपिंग एनीमेशन को ट्रिगर करता है।

एक बार खिलाड़ी हवा में होने के बाद, एक और एनीमेशन शुरू होता है: गिरता हुआ चरण जो जमीन पर पहुंचने तक लूप करता है।

फिर लैंडिंग एनीमेशन शुरू होता है लेकिन एक सूक्ष्मता के साथ: यदि यह एनीमेशन शुरू होता है जब चरित्र सिर्फ जमीन पर पहुंच गया, तो बहुत देर हो चुकी है! इस चरण में हम जानते हैं कि हम मैदान में उतरने जा रहे हैं (केवल इसलिए कि हम इसे देख सकते हैं)। इस प्रकार, हम आसानी से दूरी का मूल्यांकन कर सकते हैं और हवा में रहते हुए प्रभाव के लिए तैयार हो सकते हैं।

आइए विचार करें कि जब हम कूदते हैं तो हम कैसे व्यवहार करते हैं! जब हम देखते हैं कि हम मैदान में उतरने जा रहे हैं, तो हम खुद को "प्रभाव" के लिए तैयार कर रहे हैं। हम इसलिए कर सकते हैं क्योंकि हमारे पास जमीन का विजन है और जब हम तैयार होने की जरूरत है तो जल्दी से मूल्यांकन कर सकते हैं।

हमारे मामले में क्या गायब है, जमीन से हमारे चरित्र की दूरी का मूल्यांकन करने के लिए कुछ है! मैं आपको चरित्र से जमीन तक की दूरी का मूल्यांकन करने के लिए एक विधि का खुलासा करूंगा, लेकिन ध्यान दें कि ऐसा करने के कई अन्य तरीके हैं। इसका उपयोग अन्य गेम इंजन में किया जा सकता है।

चाल हमारे चरित्र से उसके वेग की दिशा में किरण डालना है। फिर हम पहुँचने से ठीक पहले सही समय पर लैंडिंग एनीमेशन को ट्रिगर कर पाएंगे! 🥳

तैयार?

एकता के साथ कार्यान्वयन

एकता में, Raycast नामक एक उपकरण है जो हमें वही देगा जो हम चाहते हैं।

हम दो चरणों में आगे बढ़ें:

  • हम जमीन को छूने से पहले दूरी तय करने के लिए अपने वेग की दिशा में एक रेकास्ट भेजते हैं।
  • यदि ऊर्ध्वाधर अक्ष पर हमारा वेग, यूनिटी में, नकारात्मक है (जिसका अर्थ है कि हम गिर रहे हैं) और जमीन बहुत करीब है, तो हम लैंडिंग एनीमेशन को ट्रिगर करते हैं।

यह सही है, लेकिन अब जब हम खेल में कूदेंगे, तो स्क्रिप्ट सही समय पर हमारे एनिमेशन को ट्रिगर करेगी। अनंत की ओर और उससे परे! ️