KoreanFoodie's Study
유니티 Awake 와 Start 차이 본문
Udemy 관련 개념 정리 및 Dev Log 를 기록하고 있습니다!
유니티 Awake 와 Start 차이
유니티에서 Awake 와 Start 는 둘 다 초기화를 담당한다. 그런데 어떤 차이가 있는 걸까?
Awake() : 모든 변수와 게임의 상태를 초기화하기
Awake 는 일반적으로 게임이 시작되기 전에 호출 (start 보다 먼저 호출) 되며, 모든 오브젝트가 초기화되고 호출된다.
따라서 GameObject.FindWithTag 를 이용해 해당 게임 오브젝트를 요처하거나 다른 오브젝트와 안전하게 상호작용기 가능하다.
[주의] : 각 게임 오브젝트의 Awake() 는 랜덤 순서로 실행되므로, 스크립트간의 참조(reference) 를 설정하기 위해 Awake 를 사용하고, 정보를 보내고 받는 경우에는 Start 를 사용해야 한다.
Start() : Update 메소드가 처음 호출되기 바로 전에 한 번만 호출
Start 는 Behaviour 의 주기 동안에 한번만 호출된다.
Start() 는 Script Instance 로 활성화 된 경우에만 실행되는데, 이는 스크립트가 컴포넌트로 있을 때를 이야기한다. (GameObject 에 추가로 인스턴스가 되는 경우)
'Game Dev > Unity : Study' 카테고리의 다른 글
유니티 Monobehaviour 내장 함수 호출 순서 및 주의점 (0) | 2022.07.24 |
---|---|
유니티에서 일시정지 및 특정 물체 시간 정지 구현하기 (1) | 2022.07.09 |
모바일 빌드시, Input.GetTouch(0) 사용법 : argumentexception: index out of bounds 해결법 (3) | 2022.07.08 |
Comments