1. 라이프사이클이란 ?
더보기
액터가 생성되어 소멸될 때까지 거치는 일련의 과정을 의미한다.
https://dev.epicgames.com/documentation/ko-kr/unreal-engine/unreal-engine-actor-lifecycle
언리얼엔진 공식문서를 참고해보면, 액터의 라이프사이클이 되게 세부적으로 나누어져있다.
이 중에 대표적으로 사용되는 6가지를 알아보자.
AItem::AItem()
void AItem::PostInitializeComponents()
void AItem::BeginPlay()
void AItem::Tick(float DeltaTime)
void AItem::Destroyed()
void AItem::EndPlay(const EEndPlayReason::Type EndPlayReason)
생성자
더보기
AItem::AItem()
오브젝트가 메모리에 적재되면서 1번 호출된다.
월드 상에 액터가 배치되기 전에 호출되므로, 컴포넌트 생성 및 기본 변수 초기화에 사용한다.
PostInitializeComponents
더보기
void AItem::PostInitializeComponents()
액터에 부착된 컴포넌트들이 초기화가 진행된 후에 호출되는 함수이다.
컴포넌트끼리 주고받아야할 데이터가 있거나, 월드에 배치되기 전에 수행해야할 작업을 구현하기에 적합하다.
BeginPlay
더보기
void AItem::BeginPlay()
월드 상에 스폰된 후에 호출되는 함수이다.
AI, 게임모드, 플레이어 컨트롤러 등의 연동이나 상호작용을 처리하기에 적합하다.
Tick
더보기
void AItem::Tick(float DeltaTime)
매 프레임마다 호출되는 함수이다.
캐릭터의 이동, 물리 계산, 애니메이션 등의 작업을 구현하기에 적합하다.
Destroyed
더보기
void AItem::Destroyed()
액터가 파괴되기 직전에 호출되는 함수이다.
메모리 해제, 사운드, 파티클 정리 작업을 수행하기에 적합하다.
EndPlay
더보기
void AItem::EndPlay(const EEndPlayReason::Type EndPlayReason)
게임 종료, 파괴, 레벨 전환 등의 상황에 호출되는 함수이다.
자원 해제, 상태 저장을 처리하기에 적합하다.
느낀 점
컴포넌트 혹은 데이터 초기화 시점을 결정할 때 유용한 라이프사이클은 리소스 정리, 성능 관리 측면에서도 활용되니 잘 알아두자 ! 그나저나 6개 말고도 되게 많던데 언제 다 알아보려나 ..
'언리얼 엔진' 카테고리의 다른 글
[언리얼엔진] Physics Asset (0) | 2025.03.06 |
---|---|
[언리얼엔진] Random 기능에 대해서 (0) | 2025.01.24 |
[언리얼엔진] 프로퍼티 시스템 (리플렉션) (0) | 2025.01.22 |
[언리얼엔진] UE_LOG 사용법 (0) | 2025.01.07 |