UE4 从外部 .FBX 文件创建 UStaticMesh returns NULL

UE4 Creating a UStaticMesh from an external .FBX file returns NULL

我正在尝试在游戏过程中将 .fbx 文件从外部文件加载到我的游戏中。 我创建了一个从路径加载网格的函数,但是函数''LoadMeshFromFile''returns NULL,我试图将路径更改为现有 .uasset 的路径并且它工作正常,但是我的目标是在游戏过程中将 .fbx 文件导入游戏,那么为什么当我在磁盘上使用 .fbx 文件的路径时它一直返回 NULL,有没有办法让它工作? 这是我的代码:

UStaticMeshComponent* UObjectsCreator::CreateMeshComponentFromStaticMesh(const FName& Path)
{

    UStaticMeshComponent* MeshComponent = CreateDefaultSubobject<UStaticMeshComponent>(TEXT("MyNewStaticMeshComponent"));
    MeshComponent->SetStaticMesh(LoadMeshFromPath(Path));

    return MeshComponent;
}


// Load Static Mesh From Path
UStaticMesh* UObjectsCreator::LoadMeshFromPath(const FName& Path)
{
    if (Path == NAME_None) return NULL;
    //~
    return LoadObjFromPath<UStaticMesh>(Path);
}

//TEMPLATE Load Obj From Path
template <typename ObjClass>
 ObjClass* UObjectsCreator::LoadObjFromPath(const FName& Path)
{
    if (Path == NAME_None) return NULL;
    //~
    return Cast<ObjClass>(StaticLoadObject(ObjClass::StaticClass(), NULL, *Path.ToString()));
}

您不能在ue4 运行时直接加载fbx 文件。 你需要使用一些外部插件来做到这一点