유니티 생명주기에 대해 정리하면서 다시한번 공부해보겠다.
유니티 스크립트를 실행하면 사전에 지정한 순서대로 이벤트 함수가 호출된다.
https://docs.unity3d.com/kr/2019.4/Manual/ExecutionOrder.html
이벤트 함수의 실행 순서 - Unity 매뉴얼
Unity 스크립트를 실행하면 사전에 지정한 순서대로 여러 개의 이벤트 함수가 실행됩니다. 이 페이지에서는 이러한 이벤트 함수를 소개하고 실행 시퀀스에 어떻게 포함되는지 설명합니다.
docs.unity3d.com
Awake
start 함수 전에 호출되며 프리펩이 인스턴스화된 직후 호출된다. 변수 초기화할때 유용하다.
OnEnable
오브젝트가 활성화 될때마다 호출된다. 활성화 될때마다 호출되기 때문에 이벤트 등을 처리하기 좋다.
Start
스크립트나 오브젝트가 활성화된 경우 첫 번째 프레임 업데이트 전에 한번만 호출된다. OnEnable처럼 재호출되지는 않느다. Awake처럼 초기화 작업을 할때 좋다.
FixedUpdate
호출 간격이 일정하게 호출된다. Update는 상황에 따라 호출시간이 달라질 수 있으므로 물리연산을 처리하는데 더 적합하다.
Update
프레임당 한번 호출한다.
LateUpdate
Update 함수가 종료된 후 프레임당 한번 호출한다. 카메라 이동구현할때 유용하다.
OnTrigger_
collider 컴포넌트에서 trigger 체크가 된 오브젝트들이 충돌할때 호출된다.
OnTriggerEnter는 트리거와 다른 콜라이더가 처음 충돌시 한번만 호출한다.
OnTriggerStay는 트리거와 다른 콜라이더가 겹쳐있는 동안 매 프레임마다 한번 호출한다.
OnTriggerExit는 트리거와 다른 콜라이더가 충돌 후 떨어질때 한번 호출한다.
OnCollision_
물리 충돌할때 호출되며 물리영향을 받아 Rigidbody가 필요하다.
OnCollisionEnter는 두 콜라이더가 처음 충돌시 한번만 호출한다.
OnCollisionStay는 두 콜라이더가 겹쳐있는 동안 매 프레임마다 한번 호출한다.
OnCollisionExit는 두 콜라이더가 충돌 후 떨어질때 한번 호출한다.
OnDestroy
오브젝트가 Destroy로 삭제되기 전에 호출된다.
OnDisable
스크립트나 오브젝트가 비활성화될때 호출된다.
OnApplicationQuit
어플리케이션이 종료되기 전에 호출된다. 게임 종료시 세이브같은 기능 구현할때 유용하다.
'unity' 카테고리의 다른 글
Unity_Shader Graph 01 (0) | 2024.08.07 |
---|---|
shader_2 (0) | 2024.07.31 |
Dictionary (0) | 2024.07.27 |
디자인 패턴(싱글톤 패턴, 팩토리 패턴) (0) | 2024.07.26 |
코루틴(Coroutine) (0) | 2024.07.24 |