Game Programming/UE4

[UE4] Log

Doanie 2022. 10. 13. 23:30

[UE4] Log


개발을 하는 과정에서 Log를 남겨 확인해야하는 일이 굉장이 많은데 이것을 블루프린트와 C++ 두가지 방법으로 출력하는 방법을 알아보자!

Blueprint

블루프린트 PrintString

좌측 상단에서 실행이 된다.

C++

화면 출력

#include "Engine.h"
//...
GEngine->AddOnScreenDebugMessage(int32 Key, 
				float TimeToDisplay, 
                               	FColor DisplayColor, 
                               	const FString& DebugMessage, 
                               	bool bNewerOnTop, 
                               	const FVector2D& TextScale);
GEngine->AddOnScreenDebugMessage(-1, 10.0f, FColor::Yellow, TEXT("Hello World!"));

로그 출력

//...
UE_LOG('로그 카테고리', '로그 상세 수준', '로그 내용');
//로그 상세 수준
//Log : 로그 파일 출력 O / 게임 내의 콘솔 출력 X / 에디터의 출력 로그 탭을 통해 계속해서 출력
//Warning : 콘솔 및 로그 파일 출력 O, 노란색으로 표시
//Error : 콘솔 및 로그 파일 출력 O, 빨간색으로 표시
//Display : 콘솔 및 로그 파일 출력 O
//Verbose : 로그 파일 출력 O, 게임내의 콘솔 출력 X, 일반적으로 자세한 로깅 및 디버깅에 사용
//VeryVerbose : 로그 파일 출력 O, 게임내의 콘솔 출력 X, 
//              일반적으로 대량의 로그를 출력하는 상세한 로깅 사용
UE_LOG(LogTemp, Log, TEXT("Hello World!!!"));

로그 포맷

//FString
UE_LOG(LogTemp, Log, TEXT("Character Name :: %s"), *MyCharacter->GetName());

//Bool
UE_LOG(LogTemp, Log, TEXT("Character is Die :: %s"), MyCharacter->GetIsDead());

//Int
UE_LOG(LogTemp, Log, TEXT("Character ID :: %d"), MyCharacter->GetID());

//Float
UE_LOG(LogTemp, Log, TEXT("Character HP :: %f"), MyCharacter->HP);

//FVector
UE_LOG(LogTemp, Log, TEXT("Character Location :: %s"), MyCharacter->GetActorLocation().ToString());

//FName
UE_LOG(LogTemp, Log, TEXT("Character FName :: &d"), MyCharacter->GetFName().ToString());

//
UE_LOG(LogTemp, Log, TEXT("Name:%s, HP:%f", MP:%f), *MyCharacter->GetName(),  MyCharacter->Hp, MyCharacter->MP);

개발 과정에서 디버깅과 로깅은 필수이다. 블루프린트로 개발 시 PrintString 이벤트를 이용하여 화면에 출력하는 방법으로 수치, 디버깅 포인트를 찾고는 했었는데 C++ 또한 AddOnScreenDebugMessage함수를 이용하여 같은 이벤트이며, UE_LOG함수를 활용하여 출력 로그로 확인할 수 있다.

'Game Programming > UE4' 카테고리의 다른 글

[UE4] BindWidget  (0) 2023.10.28
[UE4] Smart Pointer  (0) 2023.10.21
[UE4] Delegate  (0) 2023.09.17
[UE4] TMap  (0) 2023.09.09
[UE4] TArray  (0) 2023.09.02