본문 바로가기
[ Unity ]/- 유니티 실습

유니티 - [함수호출 순서]

by MRG 2022. 8. 18.
728x90
반응형

▣ 안녕하세요. 이번장에서는 유니티 엔진에 기본 함수들에 호출 순서를 공부해보겠습니다. 

 

▣ 먼저 빈 게임 오브젝트를 만든 다음에 TestManager라는 스크립트를 생성해서 넣어주세요.

 

▣ Awake(), OnEnable(), OnDisable(), Start(), FixedUpdate(), Update(), LateUpdate() 함수를 생성해주시고, 

각각 호출되는 순서를 확인하기위해 Debug.Log()를 코드 해주세요.

 

▣ OnEnable() 함수는 게임 오브젝트가 활성화될 때 실행하는 함수이고, 

OnDisable() 함수는 게임 오브젝트가 비활성화될 경우 실행되는 함수입니다. 

Awake(), Start() 함수는 스크립트가 실행할 때 기본으로 한번 실행되는 함수인데  이건 순서를 확인해보겠습니다.

 

▣ 저장을 하고 확인을 해보면 Awake()가 Start() 보다 먼저 한번 호출되는 걸 확인할 수 있습니다. 

또한 OnEnable() 함수는 활성화되어 있을 때 Start() 함수보다 먼저 실행하는 것도 확인할 수 있습니다.

OnDisable()는 비활성화될 때 실행됩니다. 

 

▣ FixedUpdate() 함수는  Fixed Timestep 설정된 값에 따라 호출하는 함수인데 이 설정은

 

728x90

 

▣ Edit에서 Project Settings에서 Time에서 Fixed Timestep을 설정할 수 있습니다.

이 값에 따라 호출됩니다.

 

Update() 활성화되어 있는 상태일 때, 매 프레임마다 호출하는 함수이고

LateUpdate() 함수는 Update 함수가 호출된 후, 마지막으로 호출하는 함수입니다. 

 

▣ 이건 우리가 실행을 해보면 FixedUpdate() -> Update() -> LateUpdate() 순서로 호출되는 걸 확인할 수 있습니다.

 

 

▣ 꼭 직접 코드를 작성해서 호출 순서를 눈으로 확인해주세요.

그리고 코드를 작성하고 확인할 때는 꼭 Debug.Log()하는 습관을 만들어가세요.

 

https://docs.unity3d.com/kr/2021.3/Manual/ExecutionOrder.html

 

이벤트 함수의 실행 순서 - Unity 매뉴얼

Unity 스크립트를 실행하면 사전에 지정한 순서대로 여러 개의 이벤트 함수가 실행됩니다. 이 페이지에서는 이러한 이벤트 함수를 소개하고 실행 시퀀스에 어떻게 포함되는지 설명합니다.

docs.unity3d.com

▣ 그리고 유니티메뉴얼을 확인하시면 유니티에 있는 함수에 실행 순서를 나타내는 순서도를 보실 수 있습니다.

이것도 꼭 한번 보고 공부하시면 많은 도움이 됩니다.

728x90
반응형

댓글