Unreal 엔진

[이득우의 언리얼 C++] 챕터3 움직이는 액터의 제작

원생계 2019. 12. 7. 20:32

.

출력 윈도우 로그

UE_LOG( 카테고리, 로깅 수준, 형식 문자열, 인자 ... )

Save/Logs 폴더에 생성.

로그 카테고리

로깅 수준 : 메시지, 경고, 에러 등

로그 카테고리로 필터링 할 수 있다.

로그 카테고리 새로 정의하기.

GameCommon.h

DECLARE_LOG_CATEGORY_EXTERN( ArenaBattle, Log, All );

GameCommon.cpp

DEFINE_LOG_CATEGORY( ArenaBattle );

EngineMinimal.h 와 CoreMinimal.h 와의 차이는?

EngineMinimal.h : 4.7 릴리즈 노트에 언급.

CoreMinimal.h : 4.15 릴리즈 노트에 언급.

EngineMinimal.h가 CoreMinimal.h 를 포함하는 더 큰 레이어의 헤더파일.

CoreMnimal.h 는 언리얼 엔진 프로그래밍에 필요한 기본적인 타입, 연산들에 대한 헤더를 포함.

대략 코드를 훑어보니 아래 순서로 include 하고있음.

CoreMinimal.h < Core.h < CoreUObject.h < EngineMinimal.h

아래는 IWYU(Include what you use 의 축약어) 에 대한 도큐먼트 링크. CoreMinimal.h 설명 포함.

https://docs.unrealengine.com/en-US/Programming/BuildTools/UnrealBuildTool/IWYU/index.html

 

IWYU

A brief overview of the updated code base for UE4, now using an Include-What-You-Use (IWYU) dependency model.

docs.unrealengine.com

책에서 선언하고 쓰는 로그 메크로.

#define ABLOG_CALLINFO (FString(__FUNCTION__) + TEXT("(") + FString::FromInt(__LINE__) + TEXT(")"))

#define ABLOG_S(Verbosity) UE_LOG(ArenaBattle, Verbosity, TEXT("%s"), *ABLOG_CALLINFO)

#define ABLOG(Verbosity, Format, ...) UE_LOG(ArenaBattle, Verbosity, TEXT("%s %s"), *ABLOG_CALLINFO, *FString::Printf(Format, ##__VA_ARGS__))

어썰션.

크래쉬 리포트 창에서 정보를 디테일하게 보려면

디버깅 정보가 포함되어야 함. 언리얼 런쳐의 엔진 설정에서 추가 가능. 20기가.

check() 로 어썰션. 하지만 에디터가 종료됨.

대신 ensure() 를 추천.

아래에서 각종 Assert 단언문 참조.

https://docs.unrealengine.com/ko/Programming/Assertions/index.html

 

어서트

 

docs.unrealengine.com

언리얼 헤더 툴이 생성하는 코드는 Intermediate 폴더에 저장됨.

Intermediate/Build/Win64/UE4Editor/Inc/ProjectName

Transform 정보가 필수적인 컴포넌트 = 씬 컴포넌트

Movement Component 같이 기능만 제공 = 액터 컴포넌트 (Actor Component)

(사실 씬 컴포넌트는 액터 컴포넌트를 상속받음.)

정리방법.

액터는 수동으로 제거해야 함.

.vs, Binaries, Intermediate, Project.sln 파일 제거.

우클릭 > Generate Visual Studio Project files

언리얼 빌드 툴은 Source 폴더를 분석, 생성. 참조 파일들은 Intermediate / ProjectFiles 폴더에 생성.

따라서, 액터를 제거하려면 Source 폴더에서 관련 파일 지우고, Visual Studio Project 재생성.

1. Source 폴더에서 .h/.cpp 파일 제거.

2. Generate Visual Studio project files

프로젝트 구성에서 관련 액터 파일 모두 제거됨.


챕터 주제는 움직이는 액터 제작이지만, 이 내용은 크게 어렵진 않아 짧게 다룸. 그 외에 언리얼 엔진을 만지면서 알아야 할 내용들에 대해서 더 비중있게 다루고 있어서 도움되는 내용이 많은 챕터.

.

.

.

728x90
반응형