커스텀 클래스 멤버를 인스펙터에 노출 시키기
스크립트를 만들게 되면 스크립트 내부에 스크립트 이름과 똑같은 기본 클래스가 만들어 지게 된다.
이 기본클래스의 public 속성을 갖는 멤버는 기본적으로 인스펙터에 노출이 된다.
하지만 기본 클래스 내부에 하위 클래스를 따로 만들게 되면 하위 클래스의 멤버가 인스펙터에 절대로 노출 되지 않는다.
만약 하위클래스의 멤버를 인스펙터에 노출 시키고 싶다면 클래스 선언 문 위에 [System.Serializable] 을 적어주면 된다.
코드
public class MainClass{
[System.Serializable] // SubClass 의 public 멤버를 인스펙터에 노출시키겠다.
public class SubClass{
public string sName;
}
}
참고
만약 클래스의 멤버가 인스펙터에 노출되는 것을 의도적으로 막고 싶다면
클래스 선언문 위에 [system.NonSerialized] 을 적어 주면 된다.
출처
http://blog.naver.com/PostView.nhn?blogId=khagaa&logNo=30128920649
'Unity > Tips 13.05.06' 카테고리의 다른 글
[ 유니티(Unity 3D) 팁 ] GameObject 동적으로 삭제 하기 (0) | 2013.05.19 |
---|---|
[ 유니티(Unity 3D) 팁 ] List 사용법 (0) | 2013.05.19 |
[ 유니티(Unity 3D) 팁 ] GameObject 동적으로 생성 하기 (0) | 2013.05.19 |
[ 유니티(Unity 3D) 팁 ] 스크립트에서 MenuItem 실행하기 (0) | 2013.05.19 |
[ 유니티(Unity 3D) 팁 ] Editor 스크립트에서 팝업창 띄우기 (0) | 2013.05.19 |