如何通过c++ 生成蓝图actor

1.创建目标actor 蓝图, 创建生成程序c++文件

2.

UObject* SpawnActor = Cast<UObject>(StaticLoadObject(UObject::StaticClass(), NULL, TEXT("/Game/Flags/BP_StoppingFlag_Blueprint.BP_StoppingFlag_Blueprint")));

UWorld* World = GetWorld();
FActorSpawnParameters SpawnParams;
SpawnParams.Owner = this;
SpawnParams.SpawnCollisionHandlingOverride = ESpawnActorCollisionHandlingMethod::AlwaysSpawn;
World->SpawnActor<AActor>(GeneratedBP->GeneratedClass, GetActorLocation(), GetActorRotation(), SpawnParams);

3.以上代码使用了 StaticLoadObject 在打包测试后发现 无法正常加载蓝图 ,路径会出现问题,如果要程序打包建议使用loadclass

UClass* SpawnActor = LoadClass<AActor>(NULL, TEXT("Blueprint'/Game/Flags/Stopping/BP_StoppingFlag_Blueprint.BP_StoppingFlag_Blueprint_C'"));

将2中loadObject 代码替换为3中代码,打包测试后没出现该问题

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
蓝图中调用C++生成的procedural mesh,可以通过以下步骤实现: 1. 在C++中创建并初始化procedural mesh,并将其添加到场景中。 2. 在蓝图中创建一个Actor,并将其设置为使用C++中创建的procedural mesh。 3. 在蓝图中使用Actor节点来访问procedural mesh,并在其上执行所需的操作。例如,您可以使用SetStaticMesh节点来设置procedural mesh的静态网格。 以下是一个简单的示例: 在C++中创建并初始化procedural mesh: ``` AProceduralMeshActor* MyProceduralMeshActor = GetWorld()->SpawnActor<AProceduralMeshActor>(); // 创建并初始化procedural mesh UMyProceduralMeshComponent* MyProceduralMeshComponent = NewObject<UMyProceduralMeshComponent>(); MyProceduralMeshComponent->RegisterComponent(); MyProceduralMeshActor->SetRootComponent(MyProceduralMeshComponent); // 添加到场景中 MyProceduralMeshActor->AttachToActor(this, FAttachmentTransformRules::KeepRelativeTransform); ``` 在蓝图中设置Actor使用C++中创建的procedural mesh: 1. 创建一个Actor蓝图,并添加一个ProceduralMeshComponent组件。 2. 在构造函数或BeginPlay事件中,使用GetOwner节点获取该Actor的引用,并将其转换为C++中创建的procedural mesh。 3. 将C++中创建的procedural mesh设置为Actor的ProceduralMeshComponent组件。 在蓝图中访问procedural mesh,并在其上执行所需的操作: 1. 使用GetOwner节点获取Actor的引用,并将其转换为C++中创建的procedural mesh。 2. 使用SetStaticMesh节点设置procedural mesh的静态网格。 3. 使用SetMaterial节点设置procedural mesh的材质。 希望这个示例可以帮助您理解如何在蓝图中调用C++生成的procedural mesh。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值