언리얼엔진에서 Thread 를 만드는 방법은 여러 가지 있는 걸로 알고 있다. 해당 글은 FRunnable 을 이용한 Thread 생성 방법을 설명한다. 참고사이트 :UE5 Multithreading With FRunnable And Thread Workflow – Unreal C++ API [ FRunnable ] class CORE_API FRunnable { public: virtual void Init(); virtual uint32 Run = 0; virtual void Exit() {} virtual void Stop() {} virtual ~FRunnable() {} } Init() Game Thread 에서 실행된다. - Blocking Thread 초기화 및 생성자이다. false 를 반..
문제점 Enum을 String으로 바꿀 때마다 새로 함수를 작성하고 새로운 enum을 파라미터로 생성해야 하기 때문에 쓸 때마다 코드가 늘어난다. 해결 static template function을 만들어서 헤더만 추가하면 쓸 수 있도록 한다. 추가 typeid.name()을 하면 'enum EnumValue'으로 만들어지기 때문에 RemoveFromStart()를 이용하여 'enum '을 잘라준다. enum은 BlueprintType 이여야 한다. 코드 template static FString GetEnumDisplayNameToString(T EnumValue) { FString EnumString = FString::Printf(TEXT("%hs"),typeid(T).name()); EnumStr..
.cpp // 생성자부분에 해당 코드를 추가 #if WITH_EDITOR #define LOCTEXT_NAMESPACE "Custom Detail" static const FName PropertyEditor("PropertyEditor"); FPropertyEditorModule& PropertyModule = FModuleManager::GetModuleChecked(PropertyEditor); // "Actor"는 클래스 타입에 맞게 변경 (예: Actor, Pawn, CharacterMovementComponent) // "MySection"은 원하는 섹션 이름으로 변경 TSharedRef Section = PropertyModule.FindOrCreateSection("Actor", "MySe..