언리얼 엔진을 공부하면서, 어떤 시점에 내가 의도한 대로 제대로 되는지 체크를 해야하는 경우가 있다. 이를 위해 유니티엔진에 Debug.Log와 같은 포지션인 UE_LOG 매크로가 존재한다.

언리얼 엔진에서의 로깅 | 언리얼 엔진 5.2 문서 (unrealengine.com)

UE_LOG(LogTemp, Log, TEXT("Debug Text"));

UE_LOG매크로에 들어가는 매개변수는 총 3개이다.

첫번째 매개변수로는 Log Category이다.

로그를 구분할 카테고리 설정을 위한 매개 변수이고, 주로 일반적으로 LogTemp를 쓴다.

90종 정도 있다고 하는데 자세한 것은 언리얼 엔진 소스코드중 CoreGlobals.h 에서 찾을 수 있다.

두번째 매개변수로는 로그의 상세레벨이다.

Untitled

언리얼엔진의 문서상에는 Fatal, Error, Warning, Display, Log, Verbose, VeryVerbose가 있으며 주로 개발시에는 Log를 주로 사용한다.

마지막 세번째 매개변수는 실질적으로 출력할 TEXT이다.

FString에 해당하는 타입을 출력하고 싶다면

UE_LOG(LogTemp, Warning, TEXT(”LevelName : %s”), *GetWorld()→GetName());

이런식으로 printf문 처럼 사용할수 있다. 자세한 부분은 공식문서에서도 기본적인 데이터타입에 대한 출력 방법이 나와있다.

커스텀 카테고리를 추가하는 방법은

DECLARE_LOG_CATEGORY_EXTERN 매크로 사용하는것이다.