如何在 运行 时间内分配组件名称?
How to assign component name during run-time?
他,
在下面的代码中,我将 StaticMeshComponent 名称指定为 "StaticMeshComponentCOMP1, StaticMeshComponentCOMP2"。 N分量效率不高
for (int32 i = 0; i < 6; i++)
{
StaticMeshComponent[i] = CreateDefaultSubobject<UStaticMeshComponent>(TEXT("StaticMeshComponentCOMP1"));
StaticMeshComponent[i] = CreateDefaultSubobject<UStaticMeshComponent>(TEXT("StaticMeshComponentCOMP2"));
// more code here
}
所以我尝试将 StaticMeshComponent 名称指定为 StaticMeshComponentCOMP 和 'i',如下所示,但无法实现结果。
for (int32 i = 0; i < 6; i++)
{
StaticMeshComponent[i] = CreateDefaultSubobject<UStaticMeshComponent>(TEXT("StaticMeshComponentCOMP" + '%i'));
}
提前感谢您的帮助
您必须将您的姓名创建为单独的 FString 变量。然后 FString 有几个追加函数,例如AppendInt().
FString name = FString(TEXT("StaticMeshComponentCOMP"));
name.AppendChar('-');
name.AppendInt(i);
他,
在下面的代码中,我将 StaticMeshComponent 名称指定为 "StaticMeshComponentCOMP1, StaticMeshComponentCOMP2"。 N分量效率不高
for (int32 i = 0; i < 6; i++)
{
StaticMeshComponent[i] = CreateDefaultSubobject<UStaticMeshComponent>(TEXT("StaticMeshComponentCOMP1"));
StaticMeshComponent[i] = CreateDefaultSubobject<UStaticMeshComponent>(TEXT("StaticMeshComponentCOMP2"));
// more code here
}
所以我尝试将 StaticMeshComponent 名称指定为 StaticMeshComponentCOMP 和 'i',如下所示,但无法实现结果。
for (int32 i = 0; i < 6; i++)
{
StaticMeshComponent[i] = CreateDefaultSubobject<UStaticMeshComponent>(TEXT("StaticMeshComponentCOMP" + '%i'));
}
提前感谢您的帮助
您必须将您的姓名创建为单独的 FString 变量。然后 FString 有几个追加函数,例如AppendInt().
FString name = FString(TEXT("StaticMeshComponentCOMP"));
name.AppendChar('-');
name.AppendInt(i);