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

यूनिटी की एडिटर स्क्रिप्टिंग क्षमताएं डेवलपर्स को अपनी ज़रूरतों के हिसाब से Unity एडिटर की कार्यक्षमता बढ़ाने की अनुमति देती हैं। ऐसा करने का एक शक्तिशाली तरीका कस्टम एडिटर विंडो बनाना है। इस ट्यूटोरियल में, हम एक सरल कस्टम एडिटर विंडो बनाएंगे जो आपको अपने सीन में गेम ऑब्जेक्ट्स का बैच रीनेम करने की अनुमति देता है। बड़ी संख्या में ऑब्जेक्ट्स से निपटने के दौरान यह टूल बहुत समय बचा सकता है।

चरण 1: स्क्रिप्ट सेट करना

सबसे पहले, हमें एक नई स्क्रिप्ट बनाने की ज़रूरत है जो हमारी कस्टम एडिटर विंडो को परिभाषित करेगी। Unity में, Assets > Create > C# Script पर जाएँ और इसे BatchRenamer नाम दें।

चरण 2: कस्टम एडिटर विंडो स्क्रिप्ट लिखना

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

using UnityEditor;
using UnityEngine;

public class BatchRenamer : EditorWindow
{
    private string baseName = "GameObject";
    private int startNumber = 0;

    [MenuItem("Window/Batch Renamer")]
    public static void ShowWindow()
    {
        GetWindow<BatchRenamer>("Batch Renamer");
    }

    private void OnGUI()
    {
        GUILayout.Label("Batch Rename GameObjects", EditorStyles.boldLabel);

        baseName = EditorGUILayout.TextField("Base Name", baseName);
        startNumber = EditorGUILayout.IntField("Start Number", startNumber);

        if (GUILayout.Button("Rename"))
        {
            RenameGameObjects();
        }
    }

    private void RenameGameObjects()
    {
        GameObject[] selectedObjects = Selection.gameObjects;
        for (int i = 0; i < selectedObjects.Length; i++)
        {
            selectedObjects[i].name = baseName + (startNumber + i);
        }
    }
}

संहिता का स्पष्टीकरण

स्क्रिप्ट का प्रत्येक भाग क्या करता है, यहाँ बताया गया है:

  • BatchRenamer: EditorWindow: यह वर्ग EditorWindow से विरासत में प्राप्त होता है, जिससे यह एक कस्टम संपादक विंडो बन जाता है।
  • [MenuItem("Window/Batch Renamer")]: यह विशेषता Unity संपादक के विंडो मेनू में एक आइटम जोड़ती है, जिससे आप कस्टम विंडो खोल सकते हैं।
  • ShowWindow(): यह विधि तब कॉल की जाती है जब मेनू आइटम पर क्लिक किया जाता है। यह कस्टम एडिटर विंडो खोलता है।
  • OnGUI(): इस विधि को विंडो का GUI बनाने के लिए बुलाया जाता है। यह आधार नाम और आरंभ संख्या के लिए फ़ील्ड बनाता है, और नाम बदलने की प्रक्रिया को ट्रिगर करने के लिए एक बटन बनाता है।
  • RenameGameObjects(): यह विधि दिए गए आधार नाम और आरंभ संख्या के आधार पर दृश्य में सभी चयनित गेम ऑब्जेक्ट्स का नाम बदल देती है।

चरण 3: कस्टम संपादक विंडो का उपयोग करना

कस्टम संपादक विंडो का उपयोग करने के लिए, इन चरणों का पालन करें:

  1. Unity खोलें और पदानुक्रम विंडो में उन गेम ऑब्जेक्ट्स का चयन करें जिनका आप नाम बदलना चाहते हैं।
  2. कस्टम एडिटर विंडो खोलने के लिए Window > Batch Renamer पर जाएं।
  3. दिए गए फ़ील्ड में आधार नाम और प्रारंभ संख्या दर्ज करें।
  4. Rename बटन पर क्लिक करें। चयनित गेम ऑब्जेक्ट का नाम तदनुसार बदल दिया जाएगा।

निष्कर्ष

कस्टम एडिटर विंडो बनाकर, आप Unity में अपनी उत्पादकता को काफी हद तक बढ़ा सकते हैं। यह सरल बैच रीनेमर टूल सिर्फ़ एक उदाहरण है कि आप अपने वर्कफ़्लो के लिए Unity एडिटर को कैसे बेहतर बना सकते हैं। एडिटर स्क्रिप्टिंग के साथ, संभावनाएँ अनंत हैं, जिससे आप ऐसे टूल बना सकते हैं जो खास तौर पर आपकी परियोजना की ज़रूरतों को पूरा करते हैं।