유니티
[유니티 커스텀 에디터] 맵툴 #2
HJH0825
2021. 8. 4. 22:09
유니티 커스텀 에디터로 맵툴 만들기 두 번째 포스팅
GUILayout.BeginVertical("box");
GUILayout.Label("Map Name");
_strMapName = EditorGUILayout.TextField(_strMapName/*, GUILayout.ExpandWidth(true)*/);
GUI.enabled = (_strMapName == string.Empty || _strMapName == null) ? false : true;
if (GUILayout.Button("Create New Map", GUILayout.ExpandWidth(true)))
{
Debug.LogError("create " + _strMapName);
CreateMap();
_bEditOn = true;
}
GUILayout.Space(12);
1. GUILayout.BeginVertical("box"); 박스로 묶는 범위(진한 회색으로)를 지정하게 된다.
2. Create New Map 버튼 : EditorGUILayout.TextField()에 string값이 존재 시 활성화.
3. CreateMap()함수 : 새로운 맵을 생성함
GUI.enabled = true;
GUILayout.Label("Load MapData");
_txtAssetMapContent = (TextAsset)EditorGUILayout.ObjectField(_txtAssetMapContent, typeof(TextAsset), GUILayout.ExpandWidth(true));
GUI.enabled = _txtAssetMapContent != null ? true : false;
if (GUILayout.Button("Edit Map", GUILayout.ExpandWidth(true)))
{
LoadMap(_txtAssetMapContent.text);
_bEditOn = true;
}
GUILayout.EndVertical();
1. EditorGUILayout.ObjectField() : 끌어다 붙여도 되고, 동그라미 눌러서 프로젝트 리소시스에 텍스트 파일을 선택해도 됨
2. Edit Map 버튼 : _txtAssetMapContent에 값이 들어와야 활성화.
3. LoadMap() 함수 : 선택한 텍스트 파일을 가지고 하이어라키에 맵 파일을 로드시킨다.