Page MenuHome

Patch for T60011: switch shader list in Eevee shows Cycles list
Needs ReviewPublic

Authored by Vaishnav S (padthai) on Jan 15 2019, 7:11 AM.

Details

Summary

I made a separate list of shader nodes for eevee; works fine now

Diff Detail

Event Timeline

Philipp Oeser (lichtwerk) requested changes to this revision.Fri, Jan 18, 9:59 AM

Thx for this!

This however will then exclude some cycles shaders [when you are working in cycles].

So I guess we could either:

  • keep separate lists for cycles and eevee [this should check for context.scene.render.engine on each occasion the list is used], or
  • keep them all in one list, add specular there [and live with the fact that not all shaders in the list are actually supported by the partucular engine...]

The first choice seems a bit cleaner [though a bit more work]

Note there are more nodes that differ from one engine to the other [e.g. Shader to RGB]; ideally these would be handled as well [though this could be added later as well]
For a nice overview see https://docs.blender.org/manual/en/dev/render/eevee/materials/nodes_support.html
[I also wanted to check if it is possible to extract supported nodes dynamically for each engine, so we dont have to keep these lists at all -- but this could also be done at a later stage]

If you want to work on this, you are very welcome [otherwise I can also update the Diff accordingly]

This revision now requires changes to proceed.Fri, Jan 18, 9:59 AM

Really the proper solution is for node wrangler not to duplicate the lists we already have in nodeitems_builtins.py, and instead use nodeitems_utils to loop over categories and nodes.

I think I'd like to have a go at this, thanks.

Vaishnav S (padthai) updated this revision to Diff 13261.EditedSat, Jan 19, 2:17 PM

Made separate lists for shaders and converters. The Shader To RGB node and the Specular node can be switched to now, and the rest of the cycles nodes work as well. Please have a look at the changes.