반응형 Unreal/Solution40 Unreal Did you leave off a prefix? [Unreal/C++] Did you leave off a prefix? Unreal Engine C++ 컴파일시 발생하는 에러,정리할 필요는 느끼지 못했지만, 언리얼 엔진에 대한 자료가 너무 적어서 고생하는 사람들을 위해 정리합니다. When compiling class definition for '', attempting to strip prefix results in an empty name. Did you leave off a prefix? 언리얼 엔진에는 접두사 시스템이 있습니다.Actor는 A, UObject 는 U 등 클래스 이름 앞에 접두사가 붙어다닙니다. 예를 들어 Actor - > Pawn -> Character를 차례로 상속받아 만든 클래스는 Actor의 접두사인 'A'가 앞에 붙습니.. 2023. 12. 29. Unreal Editor Preview에서 Notify 실행 중지 방법 [Unreal/C++] Editor Preview에서 Notify 실행 중지 방법언리얼 엔진에서 Animation Montage를 작업하다보면 Notify를 반 필수적으로 사용하게 된다.AnimNotify나 AnimNotifyState를 사용하다 보면 에디터 프리뷰에서 실행시 에러가 나는 것을 쉽게 경험할 수 있다. 이는 단순하게 에디터상에서 플레이중인지 체크를 하면 된다.쉬운 예외처리 방법은 EWorldType의 Preview인지 확인하는 것이다. if (MeshComp->GetWorld()->WorldType == EWorldType::Type::EditorPreview) return; EWorldType::TypeSpecifies the goal/source of a [UWorld](API\R.. 2023. 12. 28. Unreal Pure virtual function being called [Unreal/C++] Pure virtual function being called virtual 함수가 실행되고 있습니다.먼저 이 정보는 온갖 구글링에서 해결 방법이 나오지 않았습니다.단순히 UE_LOG에서 Fatal 을 Warning으로 바꿔 경고로 바꾸는 것 정도의 기능은 할 수 있습니다. 엔진 내부에서 일어나는 버그이므로 해결되기 전까지 저장을 잘 하는 방법으로 사용해야 할 것 같습니다.Pure virtual function being called while application was running (GIsRunning == 1).Fatal error: [File:F:\UnrealEngine-5.0\Engine\Source\Runtime\Core\Private\Windows\WindowsPla.. 2023. 12. 28. Unreal WidgetComponent가 활성화 되지 않음 [Unreal] WidgetComponent가 활성화 되지 않음 Unreal Engine5 WidgetComponent hide in Screen 언리얼 엔진에서 위젯 컴포넌트가 보이지 않는 현상EWidgetSpace::Screen 에서 보이지 않으며, World에서 위치가 업데이트 되지 않음EWidgetSpace::World에서는 보이지만 Screen 모드에서는 보이지 않는다. HPWidget = CreateDefaultSubobject(TEXT("HelthWidget")); HPWidget->SetupAttachment(GetMesh()); ConstructorHelpers::FClassFinder hpWidget(L"WidgetBlueprint'/Game/Enemies/Widgets/WB_Enemy.. 2023. 12. 27. Unreal 몽타주 슬롯 변경시 애니메이션 재생 [Unreal] 몽타주 슬롯 변경시 애니메이션 재생 언리얼 엔진Animation Montage Slot Change애니메이션 몽타주 슬롯 변경시 애니메이션이 재생되지 않는 현상이 있습니다.이는 프리뷰 대상이 DefaultSlot으로 설정되어 있기 때문입니다. 슬롯 그룹이나 이름(UpperBody, FullBody 등)을 변경했을 때 프리뷰 슬롯 버튼을 한 번 더 눌러주면 재생이 됩니다. Animation SlotsInsert entry-points within your Anim Graph to play animation from using Slots.docs.unrealengine.com 2023. 12. 21. Unreal IGameplayTaskOwnerInterface Link Error [Unreal/C++] IGameplayTaskOwnerInterface Link Error 언리얼 엔진 5에서 AI Controller와 UBTService 등에서 IGameplayTaskOwnerInterface인터페이스를 상속 받아 사용할 때 나타나는 문제점이다. 이는 모듈 추가가 되지 않아서 파일을 찾지 못하는 문제가 있다.CompilerResultsLog: Error: BTS_Corpse.cpp.obj : error LNK2001: "public: virtual void __cdecl IGameplayTaskOwnerInterface::OnGameplayTaskActivated(class UGameplayTask)" OnGameplayTaskActivated@IGameplayTaskOwnerIn.. 2023. 12. 20. Unreal UseBlackboard TObjectPtr 문제 [Unreal/C++] UseBlackboard TObjectPtr 문제 Unreal Engine5에서 나타나는 문제점이다.먼저 UE4 에서는 Blackboard Component가 UBlackboardComponent* 자료형으로 선언되어 있다.하지만 UE5에서는 TObjectPtr로 선언되어 있는데,UseBlackboard 함수를 사용할 때에는 UBlackboardComponent*& 형식으로 받기 때문에 전달할 수 없는 문제가 생긴다.AAIController::UseBlackboard(UBlackboardData* BlackboardAsset, UBlackboardComponent*& BlackboardComponent) UE4 강의 자료로 학습하고 UE5로 공부하고 있는 사람들이 많이 겪는 문제이.. 2023. 12. 18. Unreal C++ 생성자 사용시 주의할 점 [Unreal/C++] 생성자 사용시 주의할 점 UObject 에는 4개의 생성자가 있습니다. 아무 것도 받지 않는 기본 생성자FObjectInitializer&를 받는 생성자EStaticConstructor, EObjectFlags 를 받는 생성자FVTableHelper&를 받는 생성자 UObject를 상속받는 Actor - Pawn - Character 등도 생성자를 만들게 되면 부모의 생성자를 확인하고 호출해 줘야 합니다.// UObject.h 생성자 일부/** Default constructor */UObject();/** * Constructor that takes an ObjectInitializer. * Typically not needed, but can be useful for c.. 2023. 12. 16. Unreal C++ 블루프린트 부모 클래스 변경 [Unreal/C++] 블루프린트 부모 클래스 변경 Unreal Engine 5 에서 클래스 작업을 하던 도중 이름이 마음에 들지 않아 클래스 파일의 이름을 바꿨습니다.해당 클래스를 부모로 가지고 있던 위젯 블루프린트는 부모 클래스를 찾지 못해 다음과 같은 에러를 발생시켰습니다.위젯 블루프린트가 유효하지 않은 클래스에서 파생되어 로드할 수 없습니다.이 블루프린트의 부모 클래스가 제거되지는 않았는지 확인해보세요! 먼저 이에 대한 해결책은 언리얼 포럼에서 찾을 수 있었습니다. How to change parent class of blueprint asset?Hey guys, If someone needs to change the Parent of Blueprint without opening the Blu.. 2023. 12. 12. Unreal Layered Blend per bone 본 별 레이어 블렌딩 이상함 [Unreal] Layered Blend per bone 본 별 레이어 블렌딩 이상함 본별로 레이어 블렌딩 시 애니메이션에 따라 바라보는 방향이나 회전 등이 이상하게 잡힐때가 있습니다. 여러가지 이유가 있을 수 있지만 대략적인 원인은 다음과 같습니다.1. 레이어 설정의 타겟 본 설정이 잘못된 경우2. 뎁스나 가중치 값이 잘못 설정된 경우3. 메시 스페이스 회전이 필요하지만 설정하지 않은 경우 Paragon Animation의 경우 메시 스페이스 회전 체크를 해주지 않아 발생했습니다. 본 별로 레이어 블렌딩 노드에서 디테일 창의 내용을 확인합니다.본 이름은 설정이 잘 되어 있는지 확인하고 메시 스페이스 회전 체크 유무에 따라 어떤 변화가 있는지 확인합니다. 본 별로 레이어를 구분할 때 보통 하체를 베이.. 2023. 12. 4. Unreal Animation Montage에서 Particle이 재생되지 않음 [Unreal] Animation Montage에서 Particle이 재생되지 않음 Unreal Engine 5 Animation Montage, Animation Notification, Animation Notification State, Particle System 애니메이션 설정 문제반복 재생이 설정되어 있는 경우 Notify로 재생하는 것이 아닌 Notify state로 설정해야 한다.Animation Montage안에서 Animation Notify로 Particle을 재생하는 경우 1회성 플레이가 된다.Paritlce System에서 루핑 설정이 0(무한 반복)으로 설정되어 있는 경우 Notify에서는 바로 종료되기 때문에 재생이 되지 않는다.그러므로 Particle 설정에서 루핑 횟수를 지.. 2023. 12. 4. Unreal C++ Error: CDO Constructor (Assets): Failed to find [Unreal/C++] Error: CDO Constructor (Assets): Failed to find Error: CDO Constructor (Assest or Class) : Failed to find 에러는 경로 및 Type이 잘못되었을 때 자주 발생한다. 생성자에서 FClassFinder 이나 FObjectFinder으로 Assets을 가져오려 시도할 때 컴파일 이후로 경로가 잘못된 것을 알 수 있다.예를 들어 FClassFinder로 블루프린트 클래스를 가져올 때 레퍼런스 경로가 잘못되어 있거나 뒤에 '_C' 를 붙여주지 않아 에러가 났을 확률이 있다.ConstructorHelpers::FClassFinder bullet(L"Blueprint'/Game/Characters/Bullets/.. 2023. 12. 1. 이전 1 2 3 4 다음 반응형