2
$\begingroup$

is there a way in blender to make a tree of procedural maps that can be used in several materials at the same time? and updated at once by changing their contents in the various materials that receive it? where they are linked to the map trees of the materials that receive it?

thanks

$\endgroup$
2

1 Answer 1

6
$\begingroup$

Sure create one material that has the tree you want. Select the tree and make it a node group. (Shortcut CtrlG). Hook some of the inputs to the group input and some of the outputs to the group output. An expanded group might look like this silly example:

Noise/Voronoi

Once you've created such a group you can add it the same way you would add an individual node, by typing ShiftA and going to Group in the select menu and picking it by name. I didn't change the name of the above group so it shows up as Node Group in the menu. You should name your node groups so that you can tell what they do.

Add menu showing "Node Group" as name

In this silly example, any Material that uses the group can have a unique value for the Noise Texture's Scale input, but if you change any other input, such as the Voronoi Texture's Scale input, it changes it for every material that uses the group.

That is, Group Inputs are unique to a given use of the node group, but any internal setting is shared by every use.

$\endgroup$
8
  • $\begingroup$ and is it possible to turn this function off and on again for all materials with the same configuration? can i have a mixRGB node to connect external maps in the group? $\endgroup$
    – bilo
    Jan 27 at 23:40
  • 1
    $\begingroup$ yes. for instance, pass a color in, use the node group to modify it, then use the mixRGB to select between the modified and unmodified version of the color. $\endgroup$ Jan 27 at 23:44
  • $\begingroup$ can you be more clear? actually the above questions are two different questions. $\endgroup$
    – bilo
    Jan 28 at 0:29
  • $\begingroup$ Probably should ask another question. I would need more screenshots to be more clear and I don't know how to add them to comments easily. $\endgroup$ Jan 28 at 0:35
  • $\begingroup$ to change the values only in a material, just ungroup?Or is there another more efficient way? $\endgroup$
    – bilo
    Jan 28 at 4:31

Not the answer you're looking for? Browse other questions tagged or ask your own question.