WN_인생기록

[UE_5] 모듈 제작 -1 (Debug Header) 본문

언리얼 개발/이것저것 테스트

[UE_5] 모듈 제작 -1 (Debug Header)

WhNi 2024. 4. 20. 20:45

먼저 툴에 적용할 수 있는 모듈을 만들어 볼 예정인데, 

 

Custom Editor  Functionalities 는 

 

Assets에 뭔가의 Action을 할 수 있는 것과

 

Actors에 뭔가를 Action할 수 있는 걸로 나눠진다. 

 

Assests ->Action은 AssetActionUtility라는 클래스고

 

Actors->Action은 ActorActionUtility라는  클래스 이다. 

 

그래서 C++ 코드에서 Asset을 먼저 건드릴 수 있는 툴을 만들기 위해 

 

UFUNCTION(CallInEditor)라는 기능을 통해서 구현해볼 생각이다. 

 

문제는 AssetActionUtility.h 라는걸 추가할려면 

 

현재 나의모듈 빌드cs에  Blutility라는 모듈을 넣어야 하는데 넣고나서도 안되가지고 문제가 있었다. 

 

찾아보니 IEditorUtilityExtension.h에 접근할 수 없다고 나온다. 

 

경로에서 보니까 이 헤더는 private 섹션에 존재한다. 

 

 

https://forums.unrealengine.com/t/blutilitymenuextensions-h-no-such-file-or-directory/150883/2

 

BlutilityMenuExtensions.h no such file or directory

Hi @VesperDuck , not sure if you still need this, but I just faced the same issue and found the solution. So either you need it or someone else does, the solution is to include in your Build file, inside PrivateIncludePaths, the following one **System.IO.P

forums.unrealengine.com

 

역시나 포럼에 같은 내용이 있어서 봤더니

 

PrivateIncludePaths.AddRange(new string] { System.IO.Path.GetFullPath(Target.RelativeEnginePath) + "Source/Editor/Blutility/Private" });

이걸 추가하면 된다고 한다. 

 

강제적으로 private까지 추가하는걸로 보인다.

 

 

역시 갓 포럼... 

 

바로 빌드가 되어서 진행이 되었다. 

 

이후에 테스트겸

 

Editor 기능으로 스크린에 Text  띄워봤는데 처음에 안보였다 

 

왜인지는 몰라도 FPS 나 stat 볼때 나오는 텍스트 출력하니까 Text도 같이 보였다. 에디터 텍스트 띄우는 그런게 따로 있었나보다.  

 

이제 로그를 띄우거나 특정 기능이 완료되었을때 나오는 다이얼로그 노티파이 등등 디버그할때 필요한 내용들을 좀더 쉽고 원하는 데이터형으로 빠르게 접근하기 위한 헤더 파일을 추가할 예정이다. 

 

먼저 화면에 띄우는거와 로그를 띄우는걸 해보면

 

print랑 print log가 메세지나 컬러만 매개변수로 받고 편하게 출력할 수 있도록 설정했다.