嗨,我正在尝试在虚幻的c ++项目中制作图块生成器。 我想制作2D阵列瓷砖,并用蓝图编辑瓷砖设置的细节,所以我写了这样的代码
这是我的代码。
.h
USTRUCT(BlueprintType)
struct TileField
{
GENERATED_BODY()
UPROPERTY(EditAnywhere, BlueprintReadWrite)
TArray<UStaticMashComponent*> Tiles;
};
UCLASS()
// ...
public:
UPROPERTY(EditAnywhere, BlueprintReadWrite)
TArray<TileField> TileFields;
};
.cpp(在构造函数中循环)
TileFields[i].Add(CreateDefaultSubobject<UStaticMeshComponent>(/*name*/)
TileFields[i].Tiles[j]->AttachTo(RootComponent);
TileFields[i].Tiles[j]->bEditableWhenInheried = true;
// set default transform and set default static mesh etc.
,然后基于此c ++类创建蓝图类。 现在,我可以在蓝图编辑器中看到默认的静态网格物体组件,但仍然无法在蓝图编辑器中编辑单个图块细节。 只是我在详细信息面板中什么都看不到