유니티 생명주기 (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 |