상세 컨텐츠

본문 제목

언리얼엔진4 ue4 디버깅 메세지 출력 관련

게임엔진관련/언리얼 엔진

by AlrepondTech 2016. 5. 24. 01:31

본문

반응형

 

 

=======================

=======================

=======================

 

 

 

출처: http://jungmonster.tistory.com/157

 

 

디버깅 메세지 출력 방법

 

디버깅 메세지를 출력하는 방법으론 크게 두 가지가 있습니다. 

 

1. 화면 뷰에 출력

2. 출력 로그에 출력

 

먼저 뷰 화면에 출력하는 방법입니다.

 

GEngine->AddOnScreenDebugMessage()

 

를 사용합니다.

 

함수 형태는 다음과 같습니다.

void AddOnScreenDebugMessage
(
    uint64 Key,
    float TimeToDisplay,
    FColor DisplayColor,
    const FString & DebugMessage
)


그리고 GEngine은 UEngine의 글로벌 포인터 변수입니다.( 프로젝트에 보면 EngineGlobal.h 가 있습니다. 여기에서 전역 변수는 다 선언하고 사용하나 봅니다...)

 

그래서 저는 다음과 같이 사용했습니다.

 

GEngine->AddOnScreenDebugMessage(-1, 3.0f, FColor::Blue, TEXT("JungMonster Debug Log"));

 

결과 : 

 

 

 

좌측 상단에 출력 된것이 보입니다.

 

다음으론 출력 로그에 출력하는 방법입니다.

 

UE_LOG() 

 

언리얼에서 제공하는 메크로를 사용합니다.

 

간단하게 사용방법은 

 

UE_LOG(LogClass, Log, TEXT("JungMonster Debug Log"));

 

와 같이 사용 하면 됩니다.

 

첫번째 인자는 표시해주는 클래스를 나타 냅니다... 종류는 머머 있는지 잘 모르겠더군요... 

 

두번째 인자는 로그 색을 나타 냅니다.

 

Log - Grey,                   Warning - Yellow,                        Error - Red

 

그래서 3가지 형태를 출력하면 아래 와 같이 출력됩니다.

 

 

 

아래 3줄을 보면 색이 다르게 나오는걸 알 수 있습니다.

 

 

 

 

반응형

 

728x90

 

 

 

=======================

=======================

=======================

 

 

 

출처: http://amored8701.tistory.com/102

 

 

 

위 와 같이 선택한 후에

 

1
2
FString PickupDebugString = GetName();
    UE_LOG(LogClass, Log, TEXT("You have collected %s"), *PickupDebugString);

//만약 c문법의 printf 처럼 사용하고 싶다면


1
2
3
4
5
6
7
8
float distance = FVector::Dist(CurrentBallPos,DestPosition);
 
FString str = FString::Printf(TEXT("distance : %f"), distance);
 
GEngine->AddOnScreenDebugMessage(-13.0f, FColor::Red, str);
 
 
 

 
cs

다음 과 같이 출력하고자 하는 것을 코딩해 준다.

 

 

 

 

 

 

 

 

=======================

=======================

=======================

 

 

 

 

반응형


관련글 더보기

댓글 영역