게임 개발

게임개발 18일차 (Unity Learn 8일차)

쌍준 2025. 6. 14. 19:59

[SerializeField] private 을 이용해서 인스펙터에서 값을 보고 조정할 수 있으면서, 다른 클래스에서 참조하지는 못하게 할 수 있다.

 

protected로 자기자신과 상속받은 클래스들에서만 참조가 되도록 할 수 있다. (인스펙터에는 노출X) \

 

 

이외에도 const, readonly, static이 있다.

const는 선언과 동시에 초기화하고 절대 안바뀌는 고정된 값이고

readonly는 런타임 중 딱 한 번 설정한 후 안바뀌는 값이고

static은 인스턴스 없이 클래스자체에서 접근가능하고 모든 객체가 공유가능하다는데 (이건 아직 잘 모르겠다)

 

const readonly static은 [SerializeFiled]와 같이 쓸 수 없다.

시리얼라이즈 필드는 평범한 private이나 protected와만 같이 쓸 수 있다는 뜻이다.

그리고 public이어도 이 3개가 붙으면 인스펙터에서 노출이 되지 않는다.

 

딱 public / 시리얼라이즈 private / 시리얼라이즈 protected . 이 3개만 인스펙터에 노출되고 변경할 수 있다. 

 

 

유니티에는 다루기 쉽게 미리 함수들을 만들어놓았다.

 

Awake는 start와 달리 생성된 후 비활성화 상태여도 호출된다는 점이 다르다.