Is it possible to work on material instances non-destructively?

Hello there, please help me with something:

Let’s say I have two separate meshes, a wooden road and a wooden bridge. These meshes both use the same material instance, called M_Inst_Wood.

Now let’s say I want to make the bridge pink.

How can I change the color of the instance, without affecting the road and making it pink as well?

The easy answer is “create a new instance and assign it to the bridge, then the original instance won’t be affected”.
But that cannot be the only solution, because if the mesh has 50 instances, I would have to create 50 new instances and apply them to the mesh I want to edit. This is counter-productive, isn’t it?

Is there an easier workflow?

Thanks!

Hi Lamias13,

One way you could do that without needing individual instances would be to use Custom Data:

1 Like

Hey @Lamias13!

You wouldn’t have to do 50 instances for 50 bridges, unless each one was going to be unique. Material instances can be reused the same as the source material.

And you can also set those materials on a per-actor basis in the viewport once the actor has been placed in the level, so you don’t have to create children/copies of the bridge for this purpose.

2 Likes

The custom data way is what I need in my case, I think!

Thanks for the answers guys!

1 Like