How to replace material in Rhino, similar as the 'use as replacement ' function in Vray

for instance, I have two materials in rhino. and I want the property of material 1 exactly same as material 2. i.e., replace material 1 with material 2.

Vray has the material replacement function, but cant find a similar one in Rhino.

‘Match’ command doesn’t work in some cases, for instance, when we have blocks in blocks in blocks, it’s time-consuming to click into each one to get the objects and match the material.

Hello - I think the best you can do in Rhino is to select the material in the Material panel, right click, choose ‘Select Objects’

Then click on the other material and in the same context menu, ‘Assign to Objects’… Is that kind of what you mean? Not sure how it works with blocks.

Is that the goal though? All objects and layers that have Material A should get Material B?


Hi Pascal!

Thanks for your reply.

That works for objects not in the block.

But sometimes if we have blocks in blocks in blocks assigned with material A, ’ select objects’ won’t recognize those as material A, therefore cant replace or match them on one go.

There is a similar function in vray material editor, but i can’t find similar one in rhino.


Yeah… let me see if I can cook up a script for this - it might be do-able, I’ll have a look in a bit.


That would be really useful if that can be achieved! thanks Pascal!


I think Rhino really needs an option where blocks (and nested blocks hierarchies) are treated as regular objects for material, UV mapping/unwrapping, and customs display modes attributes.


Hi there - was there any progress on this function (possibly in V6?)
I’m just about to dive into consolidating materials across a whole project and this function would save me a few days.

Hey @pascal

Was there ever a script for this? It would be VERY helpful!


I would like to add my voice to that wishes. Your suggested method works fine in many cases, but often I need to swap material completely from everything (from hidden geometries, locked, objects on locked or hidden layers, from inside blocks).

I don’t know how is it handled in V-Ray for Rhino, but as an example, I will show how straightforward (from the user perspective) it is inside UE4. Something similar in Rhino would be very handy and save a lot of time.

1 Like

Hi Jakub - does this process actually remove the materials from the file, that are not the selected one, or does it only reassign all objects with those materials to the selected material?


This actually deletes the old one unfortunatelly, so it is not ideal… This made me curious to check if there is a way to do it but without deleting old one.

Anyway you can always duplicate first material before consolidation, so even if it is deleted you still have backup copy you just made.

So, your goal is to consolidate material assignments but to leave the materials intact, do I have that right?


1 Like

To be completely precise about that:

Ability to swap all instances of material in the scene and replace it with other material from Materials Panel (without deleting old one from Materials Panel - or with deleting, this can be an option for the user).

1 Like

If you have V-Ray, you can convert the material to V-ray, replace it with another V-ray Material, then convert it back to Rhino Material. The conversion is automatic from Rhino Material Properties.