यूनिटी में एक सरल 2D प्लेटफ़ॉर्मर बनाना

इस ट्यूटोरियल में, हम Unity में एक बुनियादी 2D प्लेटफ़ॉर्मर बनाएंगे। इसमें एक खिलाड़ी चरित्र बनाना शामिल होगा जो प्लेटफ़ॉर्म पर चल सकता है, कूद सकता है और उनसे बातचीत कर सकता है। हम बाधाओं और संग्रहणीय वस्तुओं जैसे कुछ बुनियादी गेम तत्व भी जोड़ेंगे।

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

आइए एक नया Unity 2D प्रोजेक्ट स्थापित करके शुरुआत करें:

  1. Unity खोलें और एक नया 2D प्रोजेक्ट बनाएं।
  2. फ़ाइल > नया दृश्य पर जाएं और 2D मोड का चयन करें।
  3. दृश्य को MainScene के रूप में सहेजें।

2. खिलाड़ी चरित्र का निर्माण

हम सबसे पहले स्प्राइट का उपयोग करके एक सरल खिलाड़ी चरित्र बनाएंगे और उसमें गतिशीलता कार्यक्षमता जोड़ेंगे:

  1. Hierarchy विंडो में राइट-क्लिक करें और Create Empty चुनें। इस ऑब्जेक्ट का नाम Player रखें।
  2. इंस्पेक्टर में Add Component पर क्लिक करके प्लेयर ऑब्जेक्ट में Sprite Renderer घटक जोड़ें।
  3. चरित्र के रूप में उपयोग करने के लिए एक स्प्राइट का चयन करें, या तो अपना स्वयं का बनाकर या Unity Asset Store से 2D संपत्ति आयात करके।
  4. भौतिकी और टकराव का पता लगाने के लिए प्लेयर ऑब्जेक्ट में Rigidbody2D और BoxCollider2D जोड़ें।

3. खिलाड़ी मूवमेंट स्क्रिप्ट लिखना

अब, आइए एक स्क्रिप्ट लिखें जिससे खिलाड़ी को चलने और कूदने की अनुमति मिले। इन चरणों का पालन करें:

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

स्क्रिप्ट की सामग्री को निम्नलिखित से प्रतिस्थापित करें:

using UnityEngine;

public class PlayerController : MonoBehaviour
{
    public float moveSpeed = 5f;
    public float jumpForce = 7f;
    private Rigidbody2D rb;
    private bool isGrounded = true;

    void Start()
    {
        rb = GetComponent();
    }

    void Update()
    {
        // Player movement
        float moveInput = Input.GetAxis("Horizontal");
        rb.velocity = new Vector2(moveInput * moveSpeed, rb.velocity.y);

        // Jumping
        if (Input.GetKeyDown(KeyCode.Space) && isGrounded)
        {
            rb.velocity = new Vector2(rb.velocity.x, jumpForce);
            isGrounded = false;
        }
    }

    private void OnCollisionEnter2D(Collision2D collision)
    {
        // Check if player is touching the ground
        if (collision.collider.CompareTag("Ground"))
        {
            isGrounded = true;
        }
    }
}

4. प्लेटफॉर्म और वातावरण का निर्माण

अब हम खिलाड़ी के कूदने के लिए प्लेटफॉर्म बनाएंगे:

  1. पदानुक्रम में, राइट-क्लिक करें और Create Empty चुनें, फिर इसे Platform नाम दें।
  2. प्लेटफ़ॉर्म पर BoxCollider2D और Sprite Renderer जोड़ें।
  3. प्लेटफ़ॉर्म के लिए एक स्प्राइट का चयन करें (उदाहरण के लिए, एक सपाट आयत)।
  4. Ctrl+D (या मैक पर Cmd+D) दबाकर प्लेटफ़ॉर्म की प्रतिलिपि बनाएँ और एक स्तर बनाने के लिए प्रतियों को स्थान दें।
  5. खिलाड़ी के जंप लॉजिक के लिए इंस्पेक्टर में इन ऑब्जेक्ट्स को Ground के रूप में टैग करें।

5. बाधाएं जोड़ना

खेल को और अधिक चुनौतीपूर्ण बनाने के लिए, आइए कुछ बाधाएं जोड़ें:

  • एक अन्य खाली गेमऑब्जेक्ट बनाएं और उसका नाम Obstacle रखें।
  • इस ऑब्जेक्ट में BoxCollider2D और Sprite Renderer जोड़ें।
  • बाधा के लिए एक स्प्राइट चुनें (जैसे, एक स्पाइक या खतरा)।
  • खिलाड़ी की OnCollisionEnter2D विधि में, आप बाधाओं के साथ टकराव का पता लगा सकते हैं और खेल को पुनः आरंभ कर सकते हैं या स्वास्थ्य में कटौती कर सकते हैं।

6. संग्रहणीय वस्तुएँ जोड़ना

हम संग्रहणीय वस्तुएं भी जोड़ सकते हैं, जैसे सिक्के या पावर-अप:

  • एक अन्य खाली गेमऑब्जेक्ट बनाएं और उसका नाम Collectible रखें।
  • संग्रहणीय वस्तु को दर्शाने के लिए एक CircleCollider2D (इसे ट्रिगर के रूप में सेट करें) और एक Sprite Renderer जोड़ें।
  • खिलाड़ी द्वारा कोई वस्तु एकत्रित करने का पता लगाने के लिए एक सरल स्क्रिप्ट लिखें:
using UnityEngine;

public class Collectible : MonoBehaviour
{
    private void OnTriggerEnter2D(Collider2D other)
    {
        if (other.CompareTag("Player"))
        {
            // Add points or other effects here
            Destroy(gameObject); // Remove the collectible from the scene
        }
    }
}

7. खेल का परीक्षण और सुधार

अब जब बुनियादी यांत्रिकी जगह पर हैं, तो आप प्ले बटन दबाकर गेम का परीक्षण कर सकते हैं। निम्नलिखित को समायोजित करने का प्रयास करें:

  • खिलाड़ी की चाल और छलांग की गति को नियंत्रित करने के लिए moveSpeed और jumpForce मानों को संशोधित करें।
  • विभिन्न स्तर बनाने के लिए प्लेटफार्मों और बाधाओं की नकल करें।
  • खेल को दृश्यात्मक रूप से आकर्षक बनाने के लिए पृष्ठभूमि तत्व या सजावट जोड़ें।

8. प्लेटफ़ॉर्मर को बढ़ाना

अपने प्लेटफ़ॉर्मर को अगले स्तर पर ले जाने के लिए, निम्नलिखित जोड़ने पर विचार करें:

  • खिलाड़ी के लिए एनिमेशन, जैसे चलना और कूदना एनिमेशन।
  • कूदने, वस्तुओं को इकट्ठा करने और बाधाओं से टकराने के लिए ध्वनि प्रभाव।
  • एक कैमरा जो खेल के अधिक गतिशील दृश्य के लिए खिलाड़ी की गतिविधियों का अनुसरण करता है।

निष्कर्ष

इस सरल 2D प्लेटफ़ॉर्मर सेटअप के साथ, अब आपके पास एक बुनियादी गेम संरचना है जिसे अधिक सुविधाओं, स्तरों और पॉलिश के साथ विस्तारित किया जा सकता है। विभिन्न मैकेनिक्स के साथ प्रयोग करें और अपना खुद का अनूठा प्लेटफ़ॉर्मर बनाएं।

लिंक
Unity 6