Class OrderIndpTransparencyEffect
java.lang.Object
WildMagic.LibGraphics.ObjectSystem.GraphicsObject
WildMagic.LibGraphics.Effects.Effect
WildMagic.LibGraphics.Effects.ShaderEffect
gov.nih.mipav.view.renderer.WildMagic.Render.OrderIndpTransparencyEffect
- All Implemented Interfaces:
Serializable,WildMagic.LibGraphics.ObjectSystem.NameIdInterface,WildMagic.LibGraphics.ObjectSystem.StreamInterface
public class OrderIndpTransparencyEffect
extends WildMagic.LibGraphics.Effects.ShaderEffect
This class sets up the final pass in rendering multiple semi-transparent surfaces.
Rendering multiple translucent surfaces is accomplished with the following steps:
1. A FrameBuffer Object (FBO) is created with three render-to-texture targets, and a depth buffer.
2. The first render target is activated. Solid objects are rendered: writing color and depth
information to the FBO target1. The color information displays the solid objects, the depth
information enables the solid objects to properly occlude the translucent objects.
3. The second and third render targets are activated. Translucent objects are rendered: writing
accumulated color and alpha to the second target and the number of overlapping surfaces per
pixel to the third target. In this pass the depth buffer is read-only.
4. Rendering to the three texture targets is disabled.
5. A screen-space polygon is rendered, it reads the three textures generated in the previous pass.
The first texture contains the color from the solid objects, the next two textures contain the
color information and weighted-average for rendering the translucent textures.
- See Also:
-
Field Summary
FieldsFields inherited from class WildMagic.LibGraphics.Effects.ShaderEffect
m_iPassQuantity, m_kAlphaState, m_kCompiledPrograms, m_kPShader, m_kVShader -
Constructor Summary
ConstructorsConstructorDescriptionOrderIndpTransparencyEffect(WildMagic.LibGraphics.Rendering.Texture[] akTextures) Creates a new OrderIndpTransparencyEffect for the final rendering pass. -
Method Summary
Methods inherited from class WildMagic.LibGraphics.Effects.ShaderEffect
dispose, GetAllObjectsByName, GetBlending, GetCProgram, GetDiskUsed, GetObjectByID, GetObjectByName, GetPassQuantity, GetPProgram, GetSamplerInformation, GetTexture, GetTexture, GetTextureQuantity, GetVProgram, Link, Load, LoadPrograms, LoadResources, OnLoadPrograms, OnReleasePrograms, Register, ReleasePrograms, ReleaseResources, RestoreGlobalState, Save, SaveStrings, SetCProgram, SetDefaultAlphaState, SetGlobalState, SetPassQuantity, SetPShader, SetVShaderMethods inherited from class WildMagic.LibGraphics.Effects.Effect
DrawMethods inherited from class WildMagic.LibGraphics.ObjectSystem.GraphicsObject
GetID, GetName, GetNextID, GetObjectByIDBase, GetObjectByNameBase, SetName
-
Field Details
-
serialVersionUID
private static final long serialVersionUID- See Also:
-
-
Constructor Details
-
OrderIndpTransparencyEffect
public OrderIndpTransparencyEffect(WildMagic.LibGraphics.Rendering.Texture[] akTextures) Creates a new OrderIndpTransparencyEffect for the final rendering pass.- Parameters:
akTextures- , set of three Frame Buffer Object (FBO) textures to render into/read from.kBackgroundColor- , background color.
-