인스펙터에서 상의 변수들을 그룹으로 분류하여 serializable class로 만들면 관리가 용이하다.
Serializable Class 만들기
- 공통 속성을 가진 변수들을 그룹지어 클래스를 만든다. [Serializable] 속성을 부여한다.
- 생성한 클래스에 변수들을 모두 public으로 선언한다.
- Awake()나 Start()에서 초기화할 필요가 없다. 초기화는 유니티가 자체적으로 해 준다.
- 변수 선언시 초기화 값을 지정할 수 있다.
플레이어가 가진 속성을 이동속성과 체력속성으로 분리하여 serializable class로 관리해 보았다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | [Serializable] public class MovementProperties //Not a MonoBehaviour! { public float movementSpeed; public float turnSpeed = 1; //default provided } [Serializable] public class HealthProperties //Not a MonoBehaviour! { public float maxHealth; public float regenerationRate; } public class Player : MonoBehaviour { public MovementProperties movementProperties; public HealthProperties healthProperties; } | cs |
'게임 개발 > Unity3D' 카테고리의 다른 글
[Unity | 유니티] 로그 On/Off를 위한 전용 로깅 스크립트 만들기 (0) | 2018.11.29 |
---|---|
[Unity | 유니티] 커스텀 정렬 알고리즘 만들기 (0) | 2018.11.21 |
[Unity | 유니티] 특정 디렉토리에서 프리팹 또는 파일 로드하기 (0) | 2018.11.15 |
[Unity | 유니티] EasingFunctions.cs 스크립트 작성하기 (0) | 2018.11.15 |
[Unity | 유니티] WWW 호출 인터페이스 작성 (0) | 2018.03.04 |