Mutable - Mesh Variation node usage inside macro - lost of material slot name

It seems that when user uses Mesh variation node inside macro script, it disturbs transfer of the material slot name of the input mesh.

On the generated mesh output, material slot name “None” is stated then.

[Image Removed]

Thanks for raising this and apologies for the delay.

I’ve logged an issue that you can follow along with here: https://issues.unrealengine.com/issue/UE-353882

I have a relatively surgical (slightly unsafe) workaround that you could use to handle this (this was the reason for the delay), potentially catching other data inputs as well.

  • Make change to struct FMutableSourceMeshData to have FMutableSourceSurfaceMetadata Metadata be mutable;
  • Add this code below to ConvertSkeletalMeshToMutable in GenerateMutableSourceMesh.cpp
//Add this
if (Source.Metadata.Mesh.IsNull())
		{
			const FMutableSourceSurfaceMetadata NewMeshData = FMutableSourceSurfaceMetadata(TSoftObjectPtr<UStreamableRenderAsset>(Source.Mesh), Source.LODIndex, Source.SectionIndex); 
			Source.Metadata = NewMeshData;
		}
//above this line roughly at line:2425
		MeshMetadata.SurfaceMetadataId = AddUniqueSurfaceMetadata(Source.Metadata, Context);

This should pass through the slot and other metadata information properly.

Dustin

Thanks a lot Dustin. We will test it.