일지

유니티...10

niamdank 2021. 5. 3. 21:21

에디터 창 기본

EditorWindow를 상속받는 클래스를 통해 커스텀 윈도우를 생성할 수 있으며 다음의 과정을 통해 화면에 출력할 수 있다.

  • EditorWindow를 상속받는 클래스 스크립트 생성
  • 창을 여는 스크립트 함수 구현
  • 창에 표시할 GUI 구현

 

이에 대한 간단한 예는 다음과 같다.

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();
    }
}

 

스크립트를 통해 추가된 버튼
버튼 클릭 시 생성되는 커스텀 윈도우