3
$\begingroup$

Is there a way to "link" two different object's materials, so that if I choose a different material on one it changes on the other, without technically "joining" the objects? Not talking about changing the nodes inside a material, I mean substituting an entirely different material to the current slot.

I am modeling a rifle and I have 2 parts that I want to always share the same material. Using Cycles.

$\endgroup$
2
  • $\begingroup$ just assign the same material to both. $\endgroup$
    – user1853
    Commented Dec 14, 2017 at 3:52
  • $\begingroup$ I know how to do that. I want to create several skins for the rifle, and I don't want to have to manually switch to a different material on both objects every time I want to change it. (2 objects isn't a lot, but future projects might have more objects in this kind of situation) Just assigning the same material to both doesn't exactly answer my question. $\endgroup$ Commented Dec 14, 2017 at 4:20

1 Answer 1

6
$\begingroup$

Not exactly, no. But there a few workarounds.

Object Groups

You can quickly copy the materials from the active object to all selected objects with ⎈ CtrlL> Materials.

Combining that with groups, you can "store" selections of objects for later. Group the selected objects together with ⎈ CtrlG, then update the materials of the group by activating the object with the updated materials and pressing ⇧ ShiftG (to reselect the group) then ⎈ CtrlL> Materials.

Node Groups

I know you specifically asked about switching materials and not about altering a single material. However, if you relax that constraint a bit you can use node groups to achieve this. Put the entirety of your material in a node group (A to select all nodes, then ⎈ CtrlG), and voila:

enter image description here

Note that in this example, the objects have separate materials: "Material A" and "Material B". They could instead share the same material, or have multiple materials each, some shared and some not. The link is through the node group.

$\endgroup$
1
  • $\begingroup$ The method of using groups will do. Thanks! $\endgroup$ Commented Dec 14, 2017 at 23:38

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .