Project Rembrandt: Difference between revisions

Line 49: Line 49:


<span style="color:red;font-size:1.5em;font-weight:bold">Important: This is experimental code and was only compiled with MSVC 2008.</span>
<span style="color:red;font-size:1.5em;font-weight:bold">Important: This is experimental code and was only compiled with MSVC 2008.</span>
=== Rendering of transparent surfaces ===
Transparent surfaces are detected by OSG loader plugins and their state set receive the TRANSPARENT_BIN rendering hint. In the culling pass, the cull visitor orders transparent surfaces in transparent bin. In a cull callback attached to the Geometry camera, after the scenegraph traversal, the transparent bins are removed from the render stage and saved in a temporary collection. In a cull callback attached to the Lighting camera, after the scenegraph traversal, the transparent bins saved at the previous stage, are added to the render stage of the Lighting camera with a high order num. That way, the transparent surface are drawn on top of the scene lighted from the Gbuffer.


== Guidelines for shader writers ==
== Guidelines for shader writers ==
269

edits