यूनिटी में कस्टम ग्रेविटी सिस्टम बनाना

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

1. कस्टम ग्रेविटी की अवधारणा को समझना

Unity में, डिफ़ॉल्ट गुरुत्वाकर्षण Y-अक्ष के साथ वस्तुओं को नीचे की ओर खींचता है। एक कस्टम गुरुत्वाकर्षण प्रणाली आपको अपने खेल की आवश्यकताओं के आधार पर किसी भी दिशा में गुरुत्वाकर्षण बल लागू करने की अनुमति देती है। यह ट्यूटोरियल एक बुनियादी सेटअप बनाने पर ध्यान केंद्रित करेगा जो आपको विभिन्न वस्तुओं के लिए गुरुत्वाकर्षण दिशा को परिभाषित करने देता है।

2. परियोजना की स्थापना

एक नया Unity प्रोजेक्ट बनाकर और एक सरल दृश्य सेट करके आरंभ करें:

  1. Unity खोलें और एक नया 3D प्रोजेक्ट बनाएं।
  2. Hierarchy में, राइट-क्लिक करें और जमीन के रूप में काम करने के लिए 3D ऑब्जेक्ट > प्लेन बनाएं।
  3. गुरुत्वाकर्षण से प्रभावित खिलाड़ी या वस्तु के रूप में कार्य करने के लिए 3D ऑब्जेक्ट > क्यूब जोड़ें।

3. कस्टम ग्रेविटी स्क्रिप्ट बनाना

इसके बाद, हम एक स्क्रिप्ट बनाएंगे जो वस्तुओं पर कस्टम गुरुत्वाकर्षण लागू करेगी:

  1. Project विंडो में राइट-क्लिक करें और Create > C# Script चुनें। इसे CustomGravity नाम दें।
  2. स्क्रिप्ट को प्रोजेक्ट विंडो से क्यूब तक खींचकर क्यूब ऑब्जेक्ट से संलग्न करें।

CustomGravity स्क्रिप्ट खोलें और इसकी सामग्री को निम्नलिखित कोड से बदलें:

using UnityEngine;

public class CustomGravity : MonoBehaviour
{
    public Vector3 gravityDirection = new Vector3(0, -9.81f, 0);
    private Rigidbody rb;

    void Start()
    {
        rb = GetComponent();
        rb.useGravity = false; // Disable default gravity
    }

    void FixedUpdate()
    {
        // Apply custom gravity
        rb.AddForce(gravityDirection, ForceMode.Acceleration);
    }
}

4. रिगिडबॉडी घटक को कॉन्फ़िगर करना

अब हमें Rigidbody घटक को कॉन्फ़िगर करने की आवश्यकता है:

  • पदानुक्रम में क्यूब ऑब्जेक्ट का चयन करें।
  • इंस्पेक्टर में, सुनिश्चित करें कि Rigidbody घटक संलग्न है। यदि नहीं, तो Add Component पर क्लिक करें और Rigidbody खोजें।
  • यूनिटी के डिफ़ॉल्ट गुरुत्वाकर्षण को ऑब्जेक्ट को प्रभावित करने से रोकने के लिए Use Gravity को false पर सेट करें।

5. कस्टम ग्रेविटी का परीक्षण

अपनी कस्टम गुरुत्वाकर्षण प्रणाली का परीक्षण करने के लिए:

  1. गुरुत्वाकर्षण की दिशा बदलने के लिए इंस्पेक्टर में gravityDirection चर को समायोजित करें। उदाहरण के लिए:
  • गुरुत्वाकर्षण को दाईं ओर खींचने का अनुकरण करने के लिए, gravityDirection को (9.81f, 0, 0) पर सेट करें।
  • ऊपर की ओर खींचने के लिए इसे (0, 9.81f, 0) पर सेट करें।
  • Play दबाएँ और देखें कि क्यूब कस्टम गुरुत्वाकर्षण पर कैसे प्रतिक्रिया करता है।

6. विभिन्न गुरुत्वाकर्षण दिशाओं वाली अनेक वस्तुओं को जोड़ना

विभिन्न गुरुत्वाकर्षण दिशाओं वाली अनेक वस्तुओं के साथ अधिक जटिल वातावरण बनाने के लिए:

  1. क्यूब ऑब्जेक्ट को कई बार डुप्लिकेट करें और इंस्पेक्टर में प्रत्येक इंस्टैंस के लिए gravityDirection बदलें।
  2. विभिन्न गुरुत्वाकर्षण सेटिंग्स के साथ प्रयोग करके देखें कि वे दृश्य में एक दूसरे के साथ किस प्रकार अंतःक्रिया करते हैं।

7. अक्सर पूछे जाने वाले प्रश्नों

प्रश्न: क्या एक ही वस्तु पर एकाधिक गुरुत्वाकर्षण स्रोत कार्य कर सकते हैं?

उत्तर: हाँ, आप CustomGravity स्क्रिप्ट को संशोधित कर सकते हैं ताकि कई गुरुत्वाकर्षण स्रोतों को शामिल करने वाला तर्क शामिल हो। आपको एक प्रबंधक बनाने की आवश्यकता होगी जो दृश्य में सभी सक्रिय गुरुत्वाकर्षण स्रोतों को ट्रैक करता है और उनके अनुसार उनके बलों को लागू करता है।

प्रश्न: मैं कस्टम गुरुत्वाकर्षण को केवल कुछ वस्तुओं पर कैसे लागू करूँ?

उत्तर: आप कस्टम गुरुत्वाकर्षण को चुनिंदा रूप से लागू करने के लिए परतों या टैग का उपयोग कर सकते हैं। गुरुत्वाकर्षण बल को लागू करने से पहले विशिष्ट टैग या परतों की जांच करने के लिए स्क्रिप्ट को संशोधित करें।

प्रश्न: मैं गुरुत्वाकर्षण को डिफ़ॉल्ट Unity गुरुत्वाकर्षण पर कैसे रीसेट करूं?

उत्तर: गुरुत्वाकर्षण को रीसेट करने के लिए, बस gravityDirection को वापस (0, -9.81f, 0) पर सेट करें और rb.useGravity को true पर सेट करके डिफ़ॉल्ट Unity गुरुत्वाकर्षण को सक्षम करें।

निष्कर्ष

आपने Unity में सफलतापूर्वक एक कस्टम गुरुत्वाकर्षण प्रणाली बनाई है। आप खिलाड़ी के इनपुट के आधार पर गुरुत्वाकर्षण दिशा बदलने, गुरुत्वाकर्षण कुओं को लागू करने, या कुछ वस्तुओं को तैरने की अनुमति देने जैसी सुविधाएँ जोड़कर इस प्रणाली का और विस्तार कर सकते हैं। अद्वितीय गेमप्ले अनुभव बनाने के लिए विभिन्न गुरुत्वाकर्षण सेटिंग्स के साथ प्रयोग करें।

लिंक
Unity 6