若我们以"SKEL_"作为前缀,并以"_C"为后缀,即调用【LoadObject 函数】并传入路径/Game/TestBlueprint.SKEL_TestBlueprint_C进行加载,我们加载到的是【蓝图骨骼类】,底层类型为【UBlueprintGeneratedClass 类】,它保存在【UBlueprintCore (UBlueprint的基类) 】的【SkeletonGeneratedClass】字段中: 这里的“骨骼”...
另外注意:LoadClass<T>的模版名称,不能直接写UBlueprint,例如:LoadClass<UBlueprint>是错误的,创建蓝图时选择的是什么父类,则写对应的父类名,假如是Actor,那么要写成:LoadClass<AActor>,否则无法加载成功。 路径名也必须带_C后缀(LoadObject不需要带_C后缀),例如,蓝图路径是:Blueprint'/Game/Blueprints/MyBP....
动态加载UObject和动态加载UClass分别用LoadObject<T>(),和LoadClass<T>() ,两者均在在UObjectGlobals.h中。 另外注意:LoadClass<T>的模版名称,不能直接写UBlueprint,例如:LoadClass<UBlueprint>是错误的,创建蓝图时选择的是什么父类,则写对应的父类名,假如是Actor,那么要写成:LoadClass<AActor>,否则无法加载...
另外注意:LoadClass<T>的模版名称,不能直接写UBlueprint,例如:LoadClass<UBlueprint>是错误的,创建蓝图时选择的是什么父类,则写对应的父类名,假如是Actor,那么要写成:LoadClass<AActor>,否则无法加载成功。 路径名也必须带_C后缀(LoadObject不需要带_C后缀),例如,蓝图路径是:Blueprint'/Game/Blueprints/MyBP....
另外注意:LoadClass<T>的模版名称,不能直接写UBlueprint,例如:LoadClass<UBlueprint>是错误的,创建蓝图时选择的是什么父类,则写对应的父类名,假如是Actor,那么要写成:LoadClass<AActor>,否则无法加载成功。 路径名也必须带_C后缀(LoadObject不需要带_C后缀),例如,蓝图路径是:Blueprint'/Game/Blueprints/MyBP....
蓝图类资源,也就是BlueprintClass,继承于UObject并且蓝图化的资源,如下所示:非蓝图类资源:UTexture,UStaticMesh,UParticleSystem,UMaterialInterface这些资源:如纹理,粒子,静态网格,材质等等,下图所示:而资源的加载我们经常性的用到 FSoftObjectPath、FSoftClassPath、FSoftObjectPtr、TSubclassOf 这四个玩意。
路径名也必须带_C后缀(LoadObject不需要带_C后缀),例如,蓝图路径是:Blueprint'/Game/Blueprints/MyBP.MyBP', 加后缀以后,则是:Blueprint'/Game/Blueprints/MyBP.MyBP_C', 例子: Cpp代码 UClass* Test = LoadClass<AActor>(NULL, TEXT("Blueprint'/Game/Blueprints/MapPathBrush_BP.MapPathBrush_BP_C'")...
TSubclassOf<UUserWidget> WidgetClass = LoadClass<UUserWidget>(this, TEXT("/Game/BP/NewWidgetBlueprint.NewWidgetBlueprint_C")); if (WidgetClass) { UserWidget = CreateWidget<UUserWidget>(GetWorld(), WidgetClass); } // 加载C++BP蓝图-基类为C++文件并创建 UUserWidget ...
角色蓝图中,设置动画蓝图是设置的Anim Class属性: 这个设置的步骤如果用C++操作,如下设置: Cpp代码 USkeletalMeshComponent::SetAnimInstanceClass(UClass* NewClass); 具体实例: Cpp代码 UAnimBlueprintGeneratedClass* MeshAnim = LoadObject<UAnimBlueprintGeneratedClass>(NULL, TEXT("/Game/Character/HeroTPP_Anim...