in PmxFactory.h, add
#include “Factories/FbxSkeletalMeshImportData.h”
in PmxFactory.cpp, comment out extern void calls at line 62, then change
ProcessImportMeshMaterials(SkeletalMesh->Materials, *SkelMeshImportDataPtr);
to
SkeletalMeshHelper::ProcessImportMeshMaterials(SkeletalMesh->Materials, *SkelMeshImportDataPtr);
and so on.
ProcessImportMeshInfluences(*SkelMeshImportDataPtr);
to
SkeletalMeshHelper::ProcessImportMeshInfluences(*SkelMeshImportDataPtr, SkeletalMesh->GetPathName());
Then some other stuff from line 1225:
FSkeletalMeshLODInfo* LODInfo = SkeletalMesh->GetLODInfo(0);
IMeshUtilities::MeshBuildOptions Options;
Options.FillOptions(LODInfo->BuildSettings);
//Force the normals or tangent in case the data is missing
Options.bComputeNormals = true;
Options.bComputeTangents = false;
if (bCreateRenderData)
{
FSkeletalMeshLODModel& BuildLODModel = SkeletalMesh->GetImportedModel()->LODModels[0];
1259:
if (!MeshUtilities.BuildSkeletalMesh(
BuildLODModel,
SkeletalMesh->GetPathName(),
SkeletalMesh->RefSkeleton,
LODInfluences,
LODWedges,
LODFaces,
LODPoints,
LODPointToRawMap,
Options)
)
in PmxSkeltalMeshImport.cpp, from 1636:
FSkeletalMeshLODInfo* LODInfo = TempSkeletalMesh->GetLODInfo(0);
IMeshUtilities::MeshBuildOptions Options;
Options.FillOptions(LODInfo->BuildSettings);
//Force the normals or tangent in case the data is missing
Options.bComputeNormals = true;
Options.bComputeTangents = false;
FSkeletalMeshLODModel& BuildLODModel = TempSkeletalMesh->GetImportedModel()->LODModels[0];
1650:
BuildLODModel,
//TempSkeletalMesh->GetImportedModel()->LODModels[0],
TempSkeletalMesh->GetPathName(),
TempSkeletalMesh->RefSkeleton,
LODInfluences,
LODWedges,
LODFaces,
LODPoints,
LODPointToRawMap
LODPointToRawMap,
Options
This should make it build, but I think I just wanted this for animations. For models I recommend VRM4U. GitHub - ruyo/VRM4U: Runtime VRM loader for UnrealEngine4
There’s a setting somewhere in the plugin settings to enable other formats like MMD.