유니티를 하다보면 불편한 점이 몇가지 있다. 일괄 처리해야 할 부분이 생기면 골라가며 수동으로 해줘야 하는데 이게 여간 곤욕이 아니다. 물론 이러한 점이 불편한 사람들을 위해 유니티에서는 에디터 상에 메뉴를 만들거나 툴을 확장할 수 있도록 도와주고 있다. 귀찮기는 하지만 더 귀찮은 점을 피하기 위해 간단하게 한번 건드려 보자.
히어라키 상에서 떠 있는 오브젝트들 중 GameItem 이라는 타입을 가지는 오브젝트 들이 있다고 치자.
이 오브젝트에는 텍스트 한개를 기입하게 되어 있는데 이 텍스트 변수의 이름을 Info라고 하면 히어라키상의 모든 GameItem을 검색하여 내용을 수정하게 해보자.
using UnityEditor;
using UnityEngine;
[MenuItem("Assets/Rebuild text in selected scene")]
static void DoSomething() // 이부분이 뭔가 하는 곳이다
{
foreach (GameItem gi in GameObject.FindObjectsOfTypeAll(typeof(GameItem)))
{
gi.Info = "원하는데로 입력";
}
}
매우 간단한 코드다.
이걸 프리펍에서 찾아다 하는 법도 있고. 선택된 것을 골라다 입력하는 방법도 있다. 이 경우 EditorUtility를 이용하면 된다.
그런데 유니티는 언제까지 쓸까. 언리얼로 갈아탈지 진지하게 고민중이다.
'Game Programming' 카테고리의 다른 글
네트워크 프로그래밍 삽질 (0) | 2013.03.19 |
---|---|
MariaDB로 변경완료 (0) | 2013.02.19 |
그레이브 런 PC 체험판 (0) | 2013.01.07 |
내게 숨겨진 초능력! 예지력을 테스트해보자! (3) | 2012.11.07 |
Java Netty (0) | 2012.07.19 |