Evul malefic crazy behavior of a shader by script at render
I have a shader called compo2.sdl which output applied manually to an object surface (then rendering) is
It is supposed that the output applying the shader by scripting should be the same.
For the scripted renderer Myscritp I can establish this shader on the surfaces before the rendering process using the line:
Renderer.setSurfacePreProcessScript( "Myscript/ScriptedRenderer/apply_comp2.dsa" );
where apply_comp2.dsa is the file script composed of the instructions to collect the parameters and the daz instruction equivalent to RI_ Surface to apply the shader compo2.sdl to the surface:
Renderer.riSurface( "compo2", aTokens, aParams );
The result when rendering is garbage...
...if the scene, including camera, aren't inside a sphere, a cube or other object. When I set all inside a sphere render works as I would expect.
Why this strange behavior? What is preventing a shader from working at rendering time, when this works perfectly when it is applied manually or all is inside a object?
Comments
PS: I call it evul because I’ve wasted two weeks of development dealing with this and today just by coincidence I discovered the strange solution