コンストラクタで取得
#include "Kismet/GameplayStatics.h"
// マテリアルインスタンスを取得
static ConstructorHelpers::FObjectFinder<UMaterialInstance> MaterialInsance(TEXT("/Game/Materials/ExampleMaterial.ExampleMaterial"));
if (MaterialInsance.Succeeded())
{
MyMesh->SetMaterial(0, MaterialInstance.Object);
}
// スタティックメッシュを取得
MyMesh = CreateDefaultSubobject<UStaticMeshComponent>(TEXT("Mesh"));
static ConstructorHelpers::FObjectFinder<UStaticMesh> StaticMesh(TEXT("/Game/StaticMesh/SM_hoge.SM_hoge"));
if (StaticMesh.Succeeded())
{
MyMesh->SetStaticMesh(StaticMesh.Object);
}
この記述は必ずコンストラクタで実装しよう!!
自信は無いが..
staticで生成することで、クラスに紐づかなくなるので、消えることがないデータとして保持することができているはず。
BPに変換して、エディタ上で変換した方がやりやすいと思う。