Oprettelse af et brugerdefineret redigeringsvindue i Unity
Unitys editor-scripting-funktioner giver udviklere mulighed for at udvide funktionaliteten af Unity Editor, så den passer til deres behov. En effektiv måde at gøre dette på er ved at oprette brugerdefinerede editorvinduer. I denne vejledning opretter vi et simpelt brugerdefineret redigeringsvindue, der giver dig mulighed for at batch-omdøbe spilobjekter i din scene. Dette værktøj kan være en enorm tidsbesparelse, når du håndterer et stort antal objekter.
Trin 1: Opsætning af scriptet
Først skal vi oprette et nyt script, der definerer vores brugerdefinerede redigeringsvindue. I Unity skal du gå til Assets > Create > C# Script og navngive det BatchRenamer.
Trin 2: Skrivning af Custom Editor Window Script
Åbn BatchRenamer.cs scriptet og erstat dets indhold med følgende kode:
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);
}
}
}
Forklaring af kodekset
Her er, hvad hver del af scriptet gør:
- BatchRenamer: EditorWindow: Denne klasse arver fra
EditorWindow
, hvilket gør det til et brugerdefineret redigeringsvindue. - [MenuItem("Window/Batch Renamer")]: Denne attribut tilføjer et element til Unity Editor's Window-menuen, så du kan åbne det brugerdefinerede vindue.
- ShowWindow(): Denne metode kaldes, når der klikkes på menupunktet. Det åbner det brugerdefinerede editorvindue.
- OnGUI(): Denne metode kaldes for at tegne vinduets GUI. Den opretter felter for basisnavnet og startnummeret og en knap til at udløse omdøbningsprocessen.
- RenameGameObjects(): Denne metode omdøber alle valgte spilobjekter i scenen baseret på det angivne basisnavn og startnummer.
Trin 3: Brug af Custom Editor-vinduet
Følg disse trin for at bruge det tilpassede redigeringsvindue:
- Åbn Unity og vælg de spilobjekter, du vil omdøbe i hierarkivinduet.
- Gå til Window > Batch Renamer for at åbne det brugerdefinerede redigeringsvindue.
- Indtast et basisnavn og startnummer i de angivne felter.
- Klik på knappen Omdøb. De valgte spilobjekter vil blive omdøbt i overensstemmelse hermed.
Konklusion
Ved at oprette brugerdefinerede editorvinduer kan du forbedre din produktivitet markant i Unity. Dette enkle batch-omdøbningsværktøj er blot et eksempel på, hvordan du kan udvide Unity-editoren, så den passer bedre til din arbejdsgang. Med editor-scripting er mulighederne uendelige, hvilket giver dig mulighed for at skabe værktøjer, der imødekommer specifikt dit projekts behov.