백지부터 시작하는 이세계 코딩 생활
Awake -- Script 및 함수들 작동 우선순위 본문
스크립트가 처음 작동했을 때 가장 처음으로 한번만 작동할 수 있게 해주는 함수. 또한 이 부분에서 변수들의 초기화를 한다.
Start 함수보다 더 먼저 실행된다.
작동 순서
Script : 기본적으로 GameManager부터 우선순위를 갖게 된다.
Funtion :
Awake --> OnEnable --> Sart --> Update --> FixedUpdate --> LateUpdate --> OnDisable --> OnDestroy
로 순서로 우선순위를 갖게 된다.
중요 :
각각의 script들 속에 아래 그림에서 처럼 중복하여 함수들이 작성되어 있다면, 각각의 script 들 속 Awake 함수를 먼저 찾아서 실행시킨다. 이는 script1, script2, script3 속의 Awake 함수를 실행시키고, 다시 script1, script2, script3 속 OnEnable 함수들을 실행시키는 순서를 갖는다는 의미이다.
한편 OnEnable과 OnDisable 함수들은 호출되었을 때만 활성화 (작동) 된다.
이 함수는 씬이 시작되면 호출됩니다(씬의 각 오브젝트에 대해 한 번).
- __ Awake : __이 함수는 항상 Start 함수의 이전 및 프리팹의 인스턴스화 직후에 호출됩니다. (만약 게임 오브젝트가 시작할 때 무효인 경우, 활성화되거나 연결된 하나의 스크립트 함수가 호출될 때까지, Awake는 호출되지 않습니다.)
- __ OnEnable : __ (오브젝트가 활성화된 경우에만 호출됩니다): 이 함수는 오브젝트를 활성화 한 직후에 호출됩니다. 이것은 MonoBehaviour 인스턴스가 생성될 때, 예를 들어 레벨 로드 또는 스크립트 컴포넌트에 연결된 게임 오브젝트가 인스턴스화 될 때 발생합니다.
OnLevelWasLoaded: This function is executed to inform the game that a new level has been loaded.
Ref .
docs.unity3d.com/kr/530/Manual/ExecutionOrder.html
'백지부터 시작하는 이세계 유니티 생활 since 2020' 카테고리의 다른 글
Rotation, Rotate (0) | 2020.11.18 |
---|---|
GetComponentInChildren, GetComponentsInChildren (0) | 2020.11.18 |
Coroutine, IEnumerator, yield return (0) | 2020.11.17 |
parameter, argument (0) | 2020.11.17 |
override, overload (0) | 2020.11.17 |
Comments