← All ideas

Rule based (procedural) shader assignment

The rule concept is very simple and very powerful. It already exists inside all modern heavy productions CGI softwares.

Let me explain: Instead of having the material as part of an object, materials sit in the outliner as an independent material entity (and you can sort them the way you like in different folders by example just like you are used to for the rest). And somewhere in the software (with a dedicated material assignment node in nodal softwares) or (inside the renderpass/layer attributes for layer based softwares), users just specify the paths of the geo they want to link to the shader.

It would be something like this:

  • car_tire_mat = /ferrari_enzo/wheels/*tire*
  • car_paint_mat = /ferrari/body
  • car_glass_mat = /.../*glass*

(If there is an interface where we could dragNdrop the desired shader in a shader list and click on it to show the rules for it, we wouldn't even have to type the shader name)

With such a system, you can:

  • change the assigned objects in a few seconds
  • try different shaders in seconds just by typing a few letters
  • assign a shader to thousands of precisely targeted objects in one single expression
  • reassign plenty of different imported shaders onto plenty of freshly updated geometry without an additional second of effort, because the rules apply everything automatically thanks to the already made expressions.

The goal is simply to make the shader assignment procedural and flexible so users can do plenty of operations the fastest way possible and update their work without taking the risk of breaking anything then have to fix it with their precious time !

80%

Development Status: Open

Upvote 8 Downvote 2
XYZS
1 Jul 2020

2 Comments

eprbl

What nefarious ignorant would ever downvote this request ? This is so much needed!

syborg64

The way I see it is making the material append function appear as simple as file navigation. As of 2.83 (not sure about next versions), the file browser can't extend blend files as if they were folders; I think the Append function should be a native and seamless feature of the file browser