백지부터 시작하는 이세계 코딩 생활

Awake -- Script 및 함수들 작동 우선순위 본문

백지부터 시작하는 이세계 유니티 생활 since 2020

Awake -- Script 및 함수들 작동 우선순위

조아덕 2020. 11. 18. 16:10

스크립트가 처음 작동했을 때 가장 처음으로 한번만 작동할 수 있게 해주는 함수. 또한 이 부분에서 변수들의 초기화를 한다.
Start 함수보다 더 먼저 실행된다.

작동 순서

Script : 기본적으로 GameManager부터 우선순위를 갖게 된다.

Funtion
Awake --> OnEnable --> Sart --> Update --> FixedUpdate --> LateUpdate --> OnDisable --> OnDestroy
로 순서로 우선순위를 갖게 된다.

중요 :
각각의 script들 속에 아래 그림에서 처럼 중복하여 함수들이 작성되어 있다면, 각각의 script 들 속 Awake 함수를 먼저 찾아서 실행시킨다. 이는 script1, script2, script3 속의 Awake 함수를 실행시키고, 다시 script1, script2, script3 속 OnEnable 함수들을 실행시키는 순서를 갖는다는 의미이다.

한편 OnEnableOnDisable 함수들은 호출되었을 때만 활성화 (작동) 된다.

 

 

 


 

Ref. https://prosto.tistory.com/247
Ref. https://prosto.tistory.com/247

 


 

이 함수는 씬이 시작되면 호출됩니다(씬의 각 오브젝트에 대해 한 번).

  • __ 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

유니티 - 매뉴얼: 이벤트 함수의 실행 순서

자동 메모리 관리를 이해하기 이벤트 함수의 실행 순서 Unity 스크립팅시, 미리 정의된 순서대로 실행되는 많은 이벤트 함수가 있습니다. 아래에서는, 실행 순서를 설명합니다. 에디터 __ Reset : __

docs.unity3d.com

 

 

 

prosto.tistory.com/247

Awake, Start, OnEnable, OnDisable - 유니티 스크립트

유니티에서 스크립트를 작성하고, 컴포넌트로 등록하여 사용할 때, 가장 기본이 되는 자동으로 일정 시점에서 호출되는 함수들이 있죠. Awake(), Start(), Update(), FixedUpdate(), OnEnable(), OnDisable() 등..

prosto.tistory.com

 

Comments