유니티 엔진 (Unity Engine)

[Unity] ScriptableWizard 클래스로 간단하게 커스텀 툴, 에디터 창 만들기

원소랑 2024. 5. 15. 16:48

 

보통은 EditorWindow 를 상속받아서 유니티 엔진 내부에 커스텀 윈도우를 만들곤 하는데, EditorWindow 를 상속받아서 작업하게 되면 디테일하게 작업해줘야 할 코드가 꽤 많아진다.

 

그래서, EditorWindow 대신 ScriptableWizard 클래스를 상속 받아서 만들면 귀찮은 작업들을 조금 생략할 수 있어진다.

public class WizardCreateLight : ScriptableWizard
{
    public float range = 500;
    public Color color = Color.red;

    [MenuItem("GameObject/Create Light Wizard")]
    static void CreateWizard()
    {
        ScriptableWizard.DisplayWizard<WizardCreateLight>("Create Light", "Create", "Apply");
        // 버튼이 하나만 필요하다면 아래처럼 파라미터 하나만 쓰면 된다.
        //ScriptableWizard.DisplayWizard<WizardCreateLight>("Create Light", "Create");
    }

    void OnWizardCreate()
    {
    	// Create 버튼을 클릭했을 때 처리.
    }
    
    void OnWizardOtherButton()
    {
    	// Apply 버튼을 클릭했을 때 처리.
    }
    
    void CreateGUI()
    {
    	// 여기서 초기화 처리 해도 좋음.
    }
    
}

 

 

유니티 엔진 ScriptableWizard 공식 문서

ScriptableWizard

https://docs.unity3d.com/ScriptReference/ScriptableWizard.html

 

Unity - Scripting API: ScriptableWizard

Success! Thank you for helping us improve the quality of Unity Documentation. Although we cannot accept all submissions, we do read each suggested change from our users and will make updates where applicable. Close

docs.unity3d.com

 


게임 개발 추천도서

 

<유니티 교과서 개정6판>(유니티 최신 버전)
https://link.coupang.com/a/bz23dY

 

유니티 교과서 개정6판

COUPANG

www.coupang.com

 

<대마왕의 유니티 URP 셰이더 그래프 스타트업>

https://link.coupang.com/a/bs8qyC

 

대마왕의 유니티 URP 셰이더 그래프 스타트업

COUPANG

www.coupang.com


<리얼-타임 렌더링(REAL-TIME RENDERING) 4/e>
https://link.coupang.com/a/8VWas

 

리얼-타임 렌더링 4/e

COUPANG

www.coupang.com

 

<이득우의 게임 수학:39가지 예제로 배운다! 메타버스를 구성하는 게임 수학의 모든 것>
https://link.coupang.com/a/9BqLd

 

이득우의 게임 수학:39가지 예제로 배운다! 메타버스를 구성하는 게임 수학의 모든 것

COUPANG

www.coupang.com

 

유니티 에셋 스토어 링크
https://assetstore.unity.com?aid=1011lvz7h

 

에셋스토어

여러분의 작업에 필요한 베스트 에셋을 찾아보세요. 유니티 에셋스토어가 2D, 3D 모델, SDK, 템플릿, 툴 등 여러분의 콘텐츠 제작에 날개를 달아줄 다양한 에셋을 제공합니다.

assetstore.unity.com

(링크를 통해 도서/에셋 구입시 일정액의 수수료를 지급받습니다.)


 

728x90
반응형