본문 바로가기

Unity(기록용)/Unity 기초

유니티 Life Cycle

유니티 Life Cycle이란?

unity에서 스크립트 실행 시 이벤트 함수가 진행되는 순서이다.

Unity Life Cycle 공식이미지

Awake

 씬이 시작 할때 호출된다. Start 보다 먼저 호출 된다. (비활성화된 오브젝트는 활성화 후 호출 된다)

OnEnable

활성화 될때 호출 된다. 

Start

첫번째 프레임전에 한번 호출된다.

FixedUpdate

프레임마다 호출되는 게 아닌, 설정된 Fixed Timestep 마다 호출된다. 프레임이 낮을 경우 한 프레임 동안 여러 번 호출될 수 있으며 프레임이 높을 경우 한 프레임 동안 호출이 되지 않을 수 있다.

Update

프레임마다 1번 호출된다.

LateUpdate

Update가 끝난 후 호출된다. Update와 마찬가지로 프레임마다 한번 호출 된다.

OnDisable

비활성화될 때 호출 된다.

OnDestroy

오브젝트가 파괴될 때, 위의 프레임 업데이트를 마치고 호출된다.

 

다음은 Awake 호출 후 5초 후 제거되는 gameObject다. 각 이벤트 함수가 호출될 때 Log를 발생시킨다.

그  후 Log창이다.

Awake > OnEnalbe > Start > Update > LateUpdate > OnDisable > Ondestroy가 호출되었다.

5초 후 제거가 돼서 Awake는 47초 Disable과 Destroy는 5초 후의 파괴된 후 호출된 걸 알 수 있다.

 

Unity Life Cycle의 설명 2020.3 버전 기준 아래 링크에서 확인할 수 있다.

링크:https://docs.unity3d.com/kr/2020.3/Manual/ExecutionOrder.html

'Unity(기록용) > Unity 기초' 카테고리의 다른 글

Unity 반복문  (1) 2023.06.20