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

    Fields
    Modifier and Type
    Field
    Description
    private static final long
     

    Fields inherited from class WildMagic.LibGraphics.Effects.ShaderEffect

    m_iPassQuantity, m_kAlphaState, m_kCompiledPrograms, m_kPShader, m_kVShader
  • Constructor Summary

    Constructors
    Constructor
    Description
    OrderIndpTransparencyEffect(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, SetVShader

    Methods inherited from class WildMagic.LibGraphics.Effects.Effect

    Draw

    Methods inherited from class WildMagic.LibGraphics.ObjectSystem.GraphicsObject

    GetID, GetName, GetNextID, GetObjectByIDBase, GetObjectByNameBase, SetName

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

  • 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.