结合上一篇文章,加入如下代码:
if (GetWorld())
{
// 使用基类获取到蓝图类的资源/Script/Engine.Blueprint'/Game/blueprints/BP_diaoluowu.BP_diaoluowu'
UClass* BlueprintVar = StaticLoadClass(Adiaoluowu::StaticClass(), nullptr, TEXT("/Script/Engine.Blueprint'/Game/blueprints/BP_diaoluowu.BP_diaoluowu_C'"));
if (BlueprintVar != nullptr)
{
// 向场景中添加新生成的蓝图实例
FVector SpawnLocation2 = this->GetActorLocation();
FRotator SpawnRotation2 = this->GetActorRotation();
Adiaoluowu* pMyActor = GetWorld()->SpawnActor<Adiaoluowu>(BlueprintVar,SpawnLocation2,SpawnRotation2);
if (pMyActor)
{
// 这样,场景中就会动态生成一个蓝图类实例
// 我们也会得到一个蓝图类基类的实例指针,并可以调用基类"AMyActor"中的函数
}
}
}