Option to create Material node to easily adjust all skin parameters in real time

Issue #951 resolved
Aszrael created an issue

I’m always annoyed to tune one skin part (material) - and thereafter copying it over to the other Skin parts. That’s the reason I use one node group for all. There is Thomas Material Editor. However, I prefer a more simple approach, more in line with the standard blender shading editing - and you can see the edit you do in real time.

My workflow currently includes:

  1. Merge Material of imported figure
  2. Set UDIM Tile on Geograft (shift it to 1002 - like in the manual)
  3. Make UDIM Material (btw: what the reason to not select EyeSocket by default?)

Thereafter, I directly make a Shade Group Node of the - in this case Face - to adjust all Skin Materials simultaneously.

Thereafter - I simply go over to the geograft, Shading editor and replace the Skin Shader for the Torso part with the saved Skin Node. The Geograft Shader simply now looks as:

The benefit: all skin shader Parameters will transform simultaneously.

The same could be done, if no UDIM Material is created. Of course, the textures would have to be excluded remaining as Group inputs. And: the node Group has to be used in all material for the skin.

I would suggest to put that feature in the material section:

On the right side you see the new material section; I have removed the Change Color and Change Skin Color as both have more to do with the viewport than materials 😉 (or at least I would put them on top, maybe even renaming them to Change Viewport Colors, Change Viewport Skin Colors, separated from the actual materials….)

The idea is to press Same Shading Parameters, then the dialog opens and the user can select the materials which should receive the same Skin node group (shown above). The active material would be the one providing the parameters. As all Daz-characters share same material naming I would even provide the default input (I left the EyeSocket deselected by default, although I always activate it).

Comments (11)

  1. Aszrael reporter

    Btw: I know that you have the Material Editor below. However, doing it with a node group approach would have the benefit to have real time update in the shading editor.
    If you implement the node-group feature you might consider deactivating the Launch Material Editor and Reset Material buttons. And replace them with an option to just remove the group from all materials, keeping the new adjusted parameter for all materials (i.e.: original state, but with adjusted parameters).

    As said - the main benefit for me would be the simple transfer ability of the skin parameters to geografts. A shader node group can be saved and added with all it’s parameters. Even the transfer to other characters is an option.

    And: I’m not happy with the name: Same Shading Parameters…. You might consider a better fitting name for that.

  2. Alessandro Padovani

    I see Thomas is doing something in the last commit so I’ll add my notes here if it may help.

    imho

    Making a skin custom group makes little sense. Because in daz studio there a number of different possible skins, from G1 to G81 and also inside the same generation different skins are used. The actual approach converts the material, no matter what it is. Identifying the skin and making it a custom group is possible but it will be different for every figure.

    Also please note that iray requires different bump values for every part of the skin since the bump depends on the pixel density. So this needs to be a parameter in the skin group and will be different for every part.

    Finally, the actual approach with the material editor is general purpose. I mean there’s no reason why the skin should be treated differently from other materials.

  3. Thomas Larsson repo owner

    As Alessandro said, I’m started to look into this because it seems like a nice way to adjust materials. The tool needs some more polishing before it is ready to use, e.g. it needs to skip shell node groups, but I think I prefer it over the material editor. We’ll see.

    The bump problem is ignored for the time being, but can be dealt with. Notice that we have the same problem if we make udim materials, at least if we want to actually merge the skin materials. And otherwise the ability to edit the skin material in one place is lost.

  4. Thomas Larsson repo owner

    The tool is working quite well now. I call the node group a combo group and the materials combo materials, since combining materials is not restricted to skin (although skin is of course the main application). Hence the button is called Make Combo Material. I will write something on the blog later today.

    The other methods to edit all skin materials at once have major disadvantages, and I’m thinking of retiring the material editor eventually.

    The material editor has a clumsy interface, and is limited to changing existing parameters. It cannot add new nodes or edit links.

    UDIM materials renames textures and saves them locally, and you must make sure that the uvs lie in the right tile (wrong for G81F arms and legs). And the bump distance will be off in some cases. Unless you keep materials with different bump as different materials, in which case the ability to edit all materials at once is lost.

    The combo group is created from the active material node tree. Hence if the torso is active and the face has makeup or overlay nodes, those will be lost. To avoid this you can start from the face material instead. In materials that lack makeup and overlay textures, the corresponding Fac inputs will be black i.e. zero, so the overlay node is ignored for such materials.

  5. Alessandro Padovani

    If the tool is general purpose and not limited to skin then it makes more sense. Personally I was using the material editor mostly with the principled option and found it quite easy and powerful in that case. For example to change a attribute for multiple materials as implemented recently. While with bsdf I agree the material editor is more clumsy. May be we can keep the material editor just for the principled option ?

    Not sure how combo materials can work better but I’m waiting the blog post to understand.

  6. Alessandro Padovani

    Thank you Thomas for the nice blog post. After reading the blog it is clear to me that combo materials can’t replace the material editor. That is, they serve different purposes. The combo material is aimed at replacing a set of materials with one material, except textures. While the material editor is aimed at changing one or more attributes in a set of different materials, which will remain different. One tool does not replace the other in functionality.

    That said, if you want to drop the material editor, as noted above we may keep it at least for principled where it is more effective.

  7. Thomas Larsson repo owner

    Well, there is no need to drop it if somebody uses it. The work to implement is has already been done, and so far I haven’t need to spend much time to maintain it.

  8. Log in to comment