🎮

「UnrealEngine」アクターコンポーネントのDetailsに何も映らない

2023/12/31に公開

発生した問題

  • UEで自作のActorComponentをコンストラクタから追加したが、エディターのDetailsに何も表示されない。

原因

  • 変数宣言時に UPROPERTY(EditAnywhere) を付けていない。
//ダメな例
void ATestCharacterBase::ATestCharacterBase()
{
   //単純にコンポーネントを追加しただけだと、Detailsに何も映らない!!!!!
   CreateDefaultSubobject<UMyActorComponent>(FName(TEXT("MyActorComponent")));
   
}

解決方法


//ATestCharacterBase.h

UCLASS()
class PROJECT_NAME_API ATestCharacterBase : public ACharacter
{
	GENERATED_BODY()

public:
	void ATestCharacterBase();
//...

protected:

//...
	UPROPERTY(EditAnywhere) //EditAnywhereをつけないと表示されない!!!!!!!!!!
	TObjectPtr<class UMyActorComponent> Comp = nullptr;

public:	
//...

};

//ATestCharacterBase.cpp

void ATestCharacterBase::ATestCharacterBase()
{
	Comp = CreateDefaultSubobject<UMyActorComponent>(FName(TEXT("MyActorComponent")));
	
}

Discussion