...
Any closure can be output to a special passthrough() function (name might change) to to be output as an AOV. "Pass through" nodes are familiar to Softimage users: they can be inserted anyway anywhere in the a Shade Tree to register the downstream subtree as an output variable.
Consider the following simplified line of code and the corresponding evaluation :
|
|
To store the specular and diffuse components, along with weights, into the specular_aov and diffuse_aov output variables the code has to be changed in the following manner:
|
...
| Info |
|---|
Note that AOVs can be output in any node of the OSL tree. If two different OSL nodes contribute to the specular_aov variable 3Delight will correctly blend their contribution together in the final output and in the AOV. |
Gone is lockgeom
A remnant of the RenderMan way of doing things is the 'lockgeom' parameter which hints of symbolic linking of data defined on the geometry to parameters defined in the shader. From our point of view, this is feature is useless, as-is, in the OSL world:
...

