오늘의 학습 키워드
CustomEditor
공부한 내용
CustomEditor
게임 플레이 중에 바로 변화를 보기 위해 CustomEditor를 이용하게 되었다.
왜 저번처럼 CustomWindow를 사용하지 않고 CustomEditor를 사용했나면 GameManager의 기능은 모든 씬 전체에 영향을 주는 것이 아니고 존재하지도 않기 때문에 이 스크립트가 존재할 때만 적용할 생각이기 때문이다.
using System.Collections;
using System.Collections.Generic;
using UnityEditor;
using UnityEngine;
[CustomEditor(typeof(GameManager))]
public class GameHelperEditor : Editor
{
GameManager gm;
private void OnEnable()
{
gm = (GameManager)target;
}
public override void OnInspectorGUI()
{
base.OnInspectorGUI();
EditorGUILayout.LabelField("Helper", new GUIStyle(EditorStyles.label)
{
alignment = TextAnchor.MiddleCenter,
});
if (GUILayout.Button("AddScore100"))
{
gm.AddScore(100);
}
if (GUILayout.Button("IncreaseLife"))
{
gm.IncreaseLife();
}
if (GUILayout.Button("DecreaseLife"))
{
gm.DecreaseLife();
}
if (GUILayout.Button("GameClear"))
{
gm.Clear();
}
if (GUILayout.Button("GameOver"))
{
gm.Over();
}
}
}
오늘의 회고
오늘은 다른 팀원의 작업을 도와주면서 버그를 잡는 작업을 많이 했던 것 같다. 내일 제출이기 때문에 우리가 목표로 한 작업들까지는 버그가 없이 잘 동작해야 한다고 생각을 해서 이 부분에 집중을 했다. 그리고 CustomEditor를 사용하면서 버그가 검출이 됐는데 아 이래서 처음부터 테스트용 목적으로 에디터를 만들어 놓는구나 하는 생각이 들었다.
내일은 이번에 진행한 프로젝트의 제출일이다. 내일은 readme 작성과 영상을 찍고 제출하는 것을 할 생각이다. 내일도 파이팅!
'스파르타 Unity 1기' 카테고리의 다른 글
내일배움캠프 29일차 TIL - Quaternion과 벡터의 곱셈, LayerMask, 연산자 우선순위 (0) | 2023.09.15 |
---|---|
내일배움캠프 28일차 TIL - Static Batching, Dynamic Batching, Gpu Instancing (0) | 2023.09.14 |
내일배움캠프 26일차 TIL - EditorWindow와 CustomEditor (0) | 2023.09.12 |
내일배움캠프 25일차 TIL - 사운드 매니저 (0) | 2023.09.11 |
내일배움캠프 5주차 WIL - Input System (0) | 2023.09.11 |