Taene's
[U C++] UE_LOG() 본문
UE_LOG()
UE_LOG('로그 카테고리', '로그 상세 수준', '로그 포맷(내용)');
UE_LOG(LogTemp, Log, TEXT("%s"), TEXT("Hello Unreal!"));
로그 카테고리
출력된 로그가 어떤 시스템에서 발생한 로그인지 알려주고, 기본적으로 90개 이상의 카테고리를 제공한다.
특정한 카테고리에 속하지 않고 임의로 띄우는 로그라면 LogTemp를 쓴다.
아래는 커스텀 로그 카테고리를 만드는 방법이다.
custom.h
DECLARE_LOG_CATEGORY_EXTERN(Category_Name, Log, All);
custom.cpp
DECLARE_LOG_CATEGORY_EXTERN(Category_Name);
// 로그를 사용할 클래스 헤더에
#include "custom.h" //정의한 로그의 헤더를 추가 후 사용
로그 상세 수준
더보기
Log
로그 파일 출력O, 게임 내의 콘솔 출력X, 에디터의 출력 로그 탭을 통해 계속해서 출력된다. (일반적인 로그인 경우)
Warning
콘솔 및 로그 파일 출력O, 노란색으로 표시.
Error
콘솔 및 로그 파일 출력O, 빨간색으로 표시.
Display
콘솔 및 로그 파일 출력O
Fatal
콘솔 및 로그 파일 출력O, 로그가 비활성화된 경우에도 작동 중단.
Verbose
로그 파일 출력O, 개임 내의 콘솔 출력X, 일반적으로 자세한 로깅 및 디버깅에 사용
VeryVerbose
로그 파일 출력O, 개임 내의 콘솔 출력X, 일반적으로 대량의 로그를 출력하는 상세한 로깅 사용
로그 포맷
더보기
FString형 (로그에서는 %s는 TCHAR* 타입을 받는다. 이것은 *FString에 대응된다.)
UE_LOG(LogTemp, Log, TEXT("Character Name : %s"), *MyCharacter->GetName());
bool형
UE_LOG(LogTemp, Log, TEXT("Character is Dead : %s"), MyCharacter->IsDie ? TEXT("true") : TEXT("false"));
int형
UE_LOG(LogTemp, Log, TEXT("Character HP : %d"), MyCharacter->Hp);
float형
UE_LOG(LogTemp, Log, TEXT("Character Stamina : %f"), MyCharacter->Stamina);
FVector형
UE_LOG(LogTemp, Log, TEXT("Character Location : %s"), MyCharacter->GetActorLocation().ToString());
FName형
UE_LOG(LogTemp, Log, TEXT("Character FName : %d"), MyCharacter->GetFName().ToString());
# 언리얼 엔진에서는 String을 다룰 때, TEXT("")를 지정해서 다뤄야 한다. (2byte 문자열인 유니코드 문자들을 통일된 문자열로 다루기 위함, 알파벳만 쓰더라도 TEXT("")로 감싸서 사용하자.)
'Unreal5 > Unreal C++' 카테고리의 다른 글
[U C++] Unreal Object & Reflection System (0) | 2024.07.05 |
---|---|
[U C++] Class - FName (0) | 2024.07.04 |
[U C++] Class - FString (0) | 2024.07.04 |
[U C++] Unreal C++ type and size (0) | 2024.07.04 |
[U C++] UE Coding Style (0) | 2024.07.03 |