[Bf-committers] Shading System Proposals

Brecht Van Lommel brecht at blender.org
Mon Nov 30 16:05:15 CET 2009


To get some discussion started, here's two things I'm still unsure
about, extracting a BXDF from node trees and the future role of the
texture stack.

> Matt has also been investigating this, there's some overlap in topics
> but he has much more detail on various topics:
> http://wiki.blender.org/index.php/User:Broken/ShadingSystemDesignIdeas
> http://wiki.blender.org/index.php/User:Broken/RendererResearch

Matt proposes a Sample_F output here but it's not entirely clear to me
how this works, I also couldn't understand from the Houdini
documentation for example if their BSDF F value is just a
vector/scalar value or also contains information on how to sample it.

I can think of a few ways to do this using a node tree, doing the
computation F by evaluating nodes with some entirely or partially
excluded, and doing sample distribution by picking randomly from
distributions provided by nodes that contain a BXDF. Another
possibility would be to pass a long a BXDF type through nodes, then
for example a mix node could create a new BXDF that can do more clever
importance sampling. Neither seems particularly elegant or transparent
to the user to me, but I can't think of good alternatives at the

The texture stack is obviously limited in what it can texture. Nodes
provide a solution here, but the texture stack is still convenient. So
what is the role of the texture stack, do we try to fix it, and if so
do we make it more flexible like allowing to texture nearly
everything, or maybe we just leave it as is mostly and do a few small


More information about the Bf-committers mailing list