지속적으로 부딪히는 문제여서 글을 적어본다
Unity에서 editor를 사용해 특정 object의 값을 변경시킬 수 있다. 그러나 Play를 했을때 종종 값이 변경되지 않고, 원래 상태로 돌아가는 것을 볼 수 있을것이다.
이는 serialized된 값들에 변경이 적용되지 않기 때문이다. 따라서
InspectorGUI 맨 앞에는 serializedObject.update()와 모든 변경을 마치고, serializedObject.ApplimodifiedChanges()를 해줘야 한다.
또한 변경할 값들은 serializedObject.FindProperty("변수 이름").올바른 변수 타입 을 통해서 변경 시켜 줘야 한다.
가령 vector3값을 변경시킨다고 하면, serializedObject.findproperty("변수 이름").vector3Value를 통해 변경 시킬 수 있다.
'[Unity3D]' 카테고리의 다른 글
물체 자르기 (1) | 2012.05.30 |
---|---|
자르기 구현 (2) | 2012.05.25 |
자체개발 카메라 애니메이션 (0) | 2012.05.10 |
BMFONT 이용하여 직접 제작한 font 사용하기 (1) | 2012.05.08 |
커스터마이징 기능 구현하기 2. 데이터의 저장. (0) | 2012.05.03 |