Material Instances and Datasmith Reimport Question

Hi,

I’m testing the new 3ds Max to Unreal workflow and so far am pretty happy how much easier it is compared to fbx.
My question is about parent materials and material instances.

Lets say I have an object with vray-material M_concrete in 3ds Max and export via datasmith.
In Unreal a material instance called M_concrete and a parent material M_concrete is created and assigned to the cube.
Now I change some parameters in the parent material and save as M_concrete_modified, then assign the new parent to the material instance.
After reimporting the cube it switches back to the original parent.
I have to reassign it again.

What am I doing wrong?
Do I need to clone the material instance, too?

Cheers,
.

In 4.21, Datasmith preserves Material assignments after a reimport – for example, when you assign a different Material to a Static Mesh, it remembers that assignment and will maintain your change after a reimport. However, it doesn’t remember any changes you make to settings in the Material Instances, like changing parameter values, or in this case, changing the parent Material setting.

This is fixed in 4.22 – In 4.22, Datasmith tracks all changes to Material Instance properties as overrides. I just tried your scenario in a dev build, and after reimport the Material Instance correctly preserved the new copied parent Material I set for it.

If you need it to work in the meantime while you await 4.22, what I suggest is that after you make the copied Parent Material and you make your changes there, create a new Material Instance from that parent and set up its settings. Then assign that new Material Instance to the Static Mesh Actors in your Level or the Assets in your Content Browser. That new Material assignment should get preserved after the next reimport.

Thank you! I will do that.