보통은 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
게임 개발 추천도서
<유니티 교과서 개정6판>(유니티 최신 버전)
https://link.coupang.com/a/bz23dY
<대마왕의 유니티 URP 셰이더 그래프 스타트업>
https://link.coupang.com/a/bs8qyC
<리얼-타임 렌더링(REAL-TIME RENDERING) 4/e>
https://link.coupang.com/a/8VWas
<이득우의 게임 수학:39가지 예제로 배운다! 메타버스를 구성하는 게임 수학의 모든 것>
https://link.coupang.com/a/9BqLd
유니티 에셋 스토어 링크
https://assetstore.unity.com?aid=1011lvz7h
(링크를 통해 도서/에셋 구입시 일정액의 수수료를 지급받습니다.)
728x90
반응형
'유니티 엔진 (Unity Engine)' 카테고리의 다른 글
유니티 엔진 라이트맵 베이커 Bakery의 Texels per unit 이란? (0) | 2024.06.03 |
---|---|
[Unity] Timeline 을 구성하는 PlayableGraph의 Playable 구성 샘플 (0) | 2024.05.30 |
[Unity] 후처리 효과 : 앰비언트 오클루젼 - Post Processing Effects: Ambient Occlusion (0) | 2024.05.14 |
[Unity] The Unity Tutorial For Complete Beginners(완전 초보자를 위한 유니티 튜토리얼) 스크랩 (0) | 2024.05.13 |
[Unity] 모바일📱최적화 2022LTS 파트 1~4 정리 + 스크랩 (0) | 2024.05.13 |
[Unity] 라이트맵 베이킹을 위한 간단 가이드 + 요약 (0) | 2024.05.07 |
[Unity] Renderer.staticShadowCaster 의 의미. LightMap 굽는데 영향이 있나? Static 플래그와는 무슨 관계일까? 에 대한 짧은 결론. (0) | 2024.05.03 |