← All ideas

A boolean input node for used render engine

Now that we Eevee and Cycles, people make renders and try to tune them so that they look alike. For both materials and for comopositor it would be handy to have an input node which would have logical output nodes for each render engine, and turns a true (1.0 ) value if used. So that we can make materials that auto chooses different recipes based upon render engine, in both materials and compositor.

85.7%

Development Status: Open

Upvote 12 Downvote 2
peter_boos_
11 Mar 2019

11 Comments

Lauloque

If I understand correctly, it would be kind of similar to what we have as output material node : demo pic

But as an input, to be able to do such thing :

demo pic

2
peter_boos_ Author

* @-L0Lock- * Exactly ! it would also allow to use for altered glossy settings etc, or different transparancy levels

Vyach

* @Peter Boos * I see the idea. And i think it is possible now with drivers: bpy.context.scene.render.engine content engine name. So node can check it and send value (1,2,3). Then you can connext it to matnode IsEqual

Vyach

* @Peter Boos * Tried to do it with driver. Sadly it do not refresh realtime. So i would prefer devs will fix dependence graph. It will allow to drive more things. And this one too.{attachment 040331jpg} At least it work for F12 render.

Maybe it would be nice to extend this to external render engines as well like RPR, Luxrender, etc. ?

1
Lauloque

This sounds like quite some more complexity quickly, especially considering that most of the time these external engines share few nodes, if not outright not using Blender's shader nodes.

Josephbburg

I like the way it's implemented now, but I WOULD like to see render-engine a configurable property of the view layer.

lsscpp

This would make output node with engine selection unnecessary: jus put a final mix shader!

Lauloque

Well, depending your needs, the output node would be simpler.

1
lsscpp

* @-L0Lock- * Example: you want two different texture parameters at the beginning of a long node tree. Currently you have to duplicate the entire tree. With this node you could make the switch at the far left of the node tree. If you just want to switch the two last shaders a final mix shader would do the job. Ok output node with menu would be 1 node less, but I'd like better an unique approach

peter_boos_ Author

* @ Lsscpp * I dont see any problems in having both options. Depending on what one needs one can alter the choices. I'd also like to point out that it would be realy handy in compositor, overthere to bring render looks together it be very handy.