Use my code to generate static mesh if you want
GeneratedMesh.cpp (11.9 KB)
GeneratedMesh.h (2.6 KB)
Just clck on GenerateNewStaticMesh
I have an array to assing materials
The material in the actor look like this
To remove material ID (Index Zero)
void FMaterials::Apply(UDynamicMesh* &TargetMesh, const TObjectPtr<UDynamicMeshComponent> &DynamicMeshComponent)
{
if (!IsValid(DynamicMeshComponent))
{
Message::Error("FMaterials::Apply -> DynamicMeshComponent is NULL");
return;
}
TArray<UMaterialInterface*> CompactedMaterialList;
if (MaterialsList.Num()>0)
{
CompactedMaterialList = MaterialsList;
CompactedMaterialList.RemoveAt(0);
UGeometryScriptDebug* Debug = nullptr;
int MissingMaterialID = -1;
TargetMesh = UGeometryScriptLibrary_MeshMaterialFunctions::RemapToNewMaterialIDsByMaterial
(
TargetMesh,
MaterialsList,
CompactedMaterialList,
MissingMaterialID,
Debug
);
}
DynamicMeshComponent->ConfigureMaterialSet(CompactedMaterialList,true);
}