본문 바로가기
Unity

유니티 생명주기

by ornni 2024. 8. 11.
728x90
반응형

유니티 생명주기 (Unity LifeCycle)

 

초기화 > 물리연산 > 업데이트(로직) > 해체


초기화 구간: 가장 첫번째로 실행되는 구간

 

Awake: 오브젝트가 Scene안에 생성될 때, 최초로 실행되는 함수

딱 한번만 실행됨

 

void Awake() {실행;}

 

Start: 업데이트 용으로 들어가기 전에 최초로 실행되는 함수

딱 한번만 실행됨

 

void Start() {실행;}


물리연산 구간

 

FixedUpdate: 물리 연산하기 전에 실행되는 업데이트

컴퓨터 사양에 영향을 주지 않음

고정된 실행 주기로 CPU를 많이 사용(고정적으로 프레임을 유지)

주로 물리 연산과 관련된 로직만 넣음

1초에 약 50회 호출

 

void FixedUpdate() {실행;}


업데이트 구간

 

Update: 로직 업데이트

물리 연산과 관련된 로직을 제외한 나머지를 주기적으로 변하는 로직을 넣을 때 사용

환경에 따라 실행 주기가 떨어질 수 있음

 

void Update() {실행;}

 

LastUpdate: 모든 업데이트가 끝난 후 마지막으로 호출되는 함수

보통 카메라, 후처리가 들어감

 

void LastUpdate() {실행;}


해체 구간

 

OnDestroy: 오브젝트가 삭제되기 직전에 남기고 삭제됨

ex) 원기둥을 삭제하면 삭제되면서 메시지가 뜸

 

void OnDestroy() {실행;}


오브젝트는 사실 삭제하지 않고 켜고 끌 수 있음 (활성화/비활성화)

켜고 끌때마다 실행이 됨

 

활성화

OnEnable: 오브젝트가 활성화 되었을 때

초기화(Awake) & 물리영역(Start) 사이에 위치

 

void OnEnable() {실행;}

 

비활성화

OnDisable: 오브젝트가 비활성화 되거나 삭제될 때

로직(LastUpdate), 해체(OnDestroy) 사이에 위치

 

void OnDisable() {실행;}

반응형

'Unity' 카테고리의 다른 글

충돌 설정, 무시하기  (0) 2024.08.25
키보드 마우스 입력  (0) 2024.08.18
함수  (0) 2024.08.04
클래스  (0) 2024.07.28
반복문  (0) 2024.07.21