728x90
UE_LOG
https://docs.unrealengine.com/5.3/ko/logging-in-unreal-engine/
언리얼 엔진에서의 로깅
언리얼 엔진에서의 로깅과 관련된 정보를 살펴봅니다.
docs.unrealengine.com
✅ 언리얼에서 로그 보는 방법
- 에디터 메뉴: 창(Window) > 출력 로그(Output Log)
- 텍스트 로그 파일: Saved/Logs 폴더에 저장됨
✅ 로그 출력 기본: UE_LOG
UE_LOG(LogTemp, Warning, TEXT("Hello World"));
파라미터 | 설명 |
LogTemp | 로그 카테고리 (기본 제공 또는 커스텀) |
Warning | 로그 수준 (아래 참고) |
TEXT("메시지") | 출력 메시지 (printf 스타일로 포맷 가능) |
✅ 로그 상세 수준 (ELogVerbosity)
분류 | 설명 |
Fatal | 치명적 에러, 출력 후 크래시 |
Error | 빨간색 에러 메시지 출력 |
Warning | 노란색 경고 메시지 |
Display | 일반 메시지 |
Log | 로그 파일에만 출력 |
Verbose / VeryVerbose | 매우 상세한 내부 디버깅용 로그 |
✅ 타입별 로그 출력 예시
// FString
UE_LOG(LogTemp, Warning, TEXT("이름은 %s"), *MyActor->GetName());
// bool
UE_LOG(LogTemp, Warning, TEXT("값은 %s"), (bFlag ? TEXT("true") : TEXT("false")));
// int, float
UE_LOG(LogTemp, Warning, TEXT("값은 %d"), Count);
UE_LOG(LogTemp, Warning, TEXT("값은 %.2f"), Speed);
// FVector
UE_LOG(LogTemp, Warning, TEXT("위치: %s"), *Location.ToString());
✅ 커스텀 로그 카테고리 만들기
헤더 파일
DECLARE_LOG_CATEGORY_EXTERN(MyLog, Log, All);
CPP 파일
DEFINE_LOG_CATEGORY(MyLog);
사용
UE_LOG(MyLog, Display, TEXT("커스텀 로그 사용"));
✅ 화면 디버그 메시지 출력
if (GEngine)
{
GEngine->AddOnScreenDebugMessage(-1, 5.f, FColor::Red, TEXT("디버그 메시지"));
}
파라미터 | 설명 |
-1 | 메시지 고유 ID (-1이면 항상 새로운 메시지) |
5.f | 표시 시간(초) |
FColor | 표시 색상 |
TEXT(...) | 메시지 |
✅ UE_LOGFMT (언리얼 5.2 이상)
#include "Logging/StructuredLog.h"
UE_LOGFMT(LogCore, Warning, "로드 실패: {Name}, 오류 코드: {Error}",
("Name", Package->GetName()),
("Error", ErrorCode));
- 가독성 높은 구조화된 로깅
- Named/Positional 파라미터 지원 (단, 혼용 불가)
✅ 명령줄에서 로그 수준 조정
-LogCmds="LogTemp Verbose"
- all 카테고리로 전체 로그 토글 가능
- 로그 출력 양을 유연하게 조절 가능
'UNREAL > unreal TIP' 카테고리의 다른 글
시리얼, udp 연결하기(이전 프로젝트 복습) - 진행중 (0) | 2025.04.09 |
---|---|
cmd창에서 UE 실행 (0) | 2024.05.07 |
단축키 (0) | 2023.10.30 |
게임 중 마우스커서 활성화(UI에만) (0) | 2023.10.10 |
UUID (Universally Unique Identifier) - 범용적으로 사용되는 고유한 식별자 (0) | 2023.09.22 |