유니티

[유니티 기초] 오브젝트 라이프 사이클

맛난과자 2024. 1. 21. 17:00

유니티의 기본적인 오브젝트 라이프 사이클

초기화→물리연산→게임로직→해체

 

 

 

1. 초기화

Awake(): 게임 오브젝트 생성시 최초 실행

 

Start(): 업데이트 시작 직전, 최초 실행

 

 

 

2. 물리 연산

FixedUpdate(): 물리 연산을 하기 전에 실행되는 업데이트 함수.

 

1초에 50분 꾸준히 호출 => CPU 부하 많음

 

주로 이동 기능에 사용

 

 

 

3. 게임 로직

Update(): 게임 로직 업데이트. 

 

환경에 따라 실행 주기 바뀜

 

주로 주기적으로 변하는 로직을 넣을 때 사용

 

 

LateUpdate(): 모든 업데이트가 끝난 뒤 마지막으로 실행.

 

주로 캐릭터를 따라가는 카메라나 후처리 등에 사용

 

 

 

4. 해체

OnDestroy(): 게임 오브젝트가 삭제될 때 실행.

 

 

활성화와 비활성화

 

1. 활성화

 

OnEnable(): 게임 오브젝트가 비활성화되었을 때 실행.

 

초기화와 물리연산 단계 사이에 발생

 

2. 비활성화

 

OnDisable(): 게임 오브젝트가 비활성화되었을 때 실행.

 

게임로직과 해체 단계 사이에 발생

 

 

임의로 만드는 함수의 실행

Start나 Update처럼 정해진 함수에서 따로 호출 후 그 함수 실행.

 

이런 정규 생명주기 외, 물리충돌 같은 이벤트함수(ex. OnCollisionEnter)에서도 임의함수를 부를 수 있음.

 

 

이 글은 골드메탈님의 '유니티 입문 강좌'를 듣고 정리 및 내용 추가를 한 글입니다