Memperpanjang Editor
Harta site

Windows Server

Anda dapat membuat sejumlah jendela kustom di aplikasi Anda. Ini berperilaku seperti InspectorJendela Unity yang menampilkan informasi tentang Pengaturan GameObject yang dipilih saat ini, aset atau proyek, memungkinkan Anda untuk memeriksa dan mengedit nilai. More info
Lihat di Glossary
, SceneAdegan berisi lingkungan dan menu permainan Anda. Pikirkan setiap file Adegan unik sebagai tingkat yang unik. Di setiap Adegan, Anda menempatkan lingkungan, hambatan, dan dekorasi, pada dasarnya merancang dan membangun permainan Anda dalam potongan-potongan. More info
Lihat di Glossary
atau yang lainnya. Ini adalah cara yang bagus untuk menambahkan antarmuka pengguna ke sub-sistem untuk permainan Anda.

Custom Editor Interface by Serious Games Interactive used for scripting cutscene actions
Custom Editor Interface oleh Serious Games Interaktif digunakan untuk scripting cutscene tindakan

Membuat jendela editor kustom melibatkan langkah-langkah sederhana berikut:

  • Buat skrip yang berasal dari EditorWindow.
  • Gunakan kode untuk memicu jendela untuk menampilkan sendiri.
  • Menerapkan kode GUI untuk alat Anda.

Derive Dari EditorWindow

Untuk membuat jendela Editor Anda, skrip Anda harus disimpan di dalam folder yang disebut "Editor". Membuat kelas dalam script ini yang berasal dari EditorWindow. Kemudian tulis kontrol GUI Anda dalam fungsi OnGUI bagian dalam.

using UnityEngine;
using UnityEditor;
using System.Collections;

public class Example : EditorWindow

    {
        void OnGUI () {
            // The actual window code goes here
           }
    }

MyWindow.js - ditempatkan di folder yang disebut 'Editor' dalam proyek Anda.

Tampilkan jendela

Untuk menampilkan jendela di layar, buat item menu yang menampilkannya. Ini dilakukan dengan membuat fungsi yang diaktifkan oleh properti MenuItem.

Perilaku default dalam Unity adalah untuk mendaur ulang windows (sehingga memilih item menu lagi akan menunjukkan jendela yang ada. Ini dilakukan dengan menggunakan fungsi WordPress.org Seperti ini:

using UnityEngine;
using UnityEditor;
using System.Collections;

class MyWindow : EditorWindow {
    [MenuItem ("Window/My Window")]

    public static void  ShowWindow () {
        EditorWindow.GetWindow(typeof(MyWindow));
    }
    
    void OnGUI () {
        // The actual window code goes here
    }
}

Tampilkan MyWindow

Ini akan membuat jendela editor standar, dermaga yang menyimpan posisinya antara panggilan, dapat digunakan dalam tata letak kustom, dll. Untuk memiliki lebih banyak kontrol atas apa yang akan dibuat, Anda dapat menggunakan GetWindowWithRect

Menerapkan GUI Window Anda

Konten sebenarnya dari jendela dirender dengan menerapkan fungsi OnGUI. Anda dapat menggunakan kelas UnityGUI yang sama yang Anda gunakan untuk GUI ingame Anda (GUI dan GUILayout). Selain itu kami menyediakan beberapa kontrol GUI tambahan, terletak di kelas editor-hanya EditorGUI dan EditorGUILayout. Kelas-kelas ini menambah kontrol yang sudah tersedia dalam kelas normal, sehingga Anda dapat mencampur dan mencocokkannya.

Kode C# berikut menunjukkan bagaimana Anda dapat menambahkan elemen GUI ke EditorWindow kustom Anda:

using UnityEditor;
using UnityEngine;

public class MyWindow : EditorWindow
{
    string myString = "Hello World";
    bool groupEnabled;
    bool myBool = true;
    float myFloat = 1.23f;
    
    // Add menu item named "My Window" to the Window menu
    [MenuItem("Window/My Window")]
    public static void ShowWindow()
    {
        //Show existing window instance. If one doesn't exist, make one.
        EditorWindow.GetWindow(typeof(MyWindow));
    }
    
    void OnGUI()
    {
        GUILayout.Label ("Base Settings", EditorStyles.boldLabel);
        myString = EditorGUILayout.TextField ("Text Field", myString);
        
        groupEnabled = EditorGUILayout.BeginToggleGroup ("Optional Settings", groupEnabled);
            myBool = EditorGUILayout.Toggle ("Toggle", myBool);
            myFloat = EditorGUILayout.Slider ("Slider", myFloat, -3, 3);
        EditorGUILayout.EndToggleGroup ();
    }
}

Contoh ini menghasilkan jendela yang terlihat seperti ini:

Custom Editor Window created using supplied example.
Editor Kustom Jendela yang dibuat menggunakan contoh yang disediakan.

Untuk info lebih lanjut, lihat contoh dan dokumentasi pada EditorWindow page.

Memperpanjang Editor
Harta site