Go to the documentation of this file.
47 #ifndef vtkDualDepthPeelingPass_h
48 #define vtkDualDepthPeelingPass_h
50 #include "vtkRenderingOpenGL2Module.h"
65 virtual
void PrintSelf(ostream &os,
vtkIndent indent);
68 virtual
void ReleaseGraphicsResources(
vtkWindow *w);
71 virtual
bool ReplaceShaderValues(std::
string &vertexShader,
72 std::
string &geometryShader,
73 std::
string &fragmentShader,
212 #endif // vtkDualDepthPeelingPass_h
TextureName FrontDestination
Implements the dual depth peeling algorithm.
void DeleteOcclusionQueryId()
Implement an Order Independent Transparency render pass.
const vtkRenderState * RenderState
void InitializeOcclusionQuery()
record modification and/or execution time
vtkShaderProgram * CopyDepthProgram
vtkTimeStamp CurrentStageTimeStamp
void FreeGLObjects()
Release all FBOs and textures.
vtkOpenGLBufferObject * BackBlendVBO
void CopyOpaqueDepthBuffer()
void InitColorTexture(vtkTextureObject *tex, const vtkRenderState *s)
Initialize helpers.
void RenderTranslucentPass()
Render the translucent pass geometry, counting number of render calls.
void StartOcclusionQuery()
~vtkDualDepthPeelingPass()
window superclass for vtkRenderWindow
void InitFramebuffer(const vtkRenderState *s)
unsigned int WrittenPixels
vtkTypeUInt64 vtkMTimeType
TextureName DepthDestination
void InitOpaqueDepthTexture(vtkTextureObject *tex, const vtkRenderState *s)
vtkOpenGLBufferObject * BlendVBO
void Peel()
Render the scene to produce the next set of peels.
unsigned int OcclusionThreshold
vtkFrameBufferObject2 * Framebuffer
vtkShaderProgram * BlendProgram
vtkOpenGLVertexArrayObject * CopyDepthVAO
The ShaderProgram uses one or more Shader objects.
a simple class to control print indentation
abstracts an OpenGL texture object.
vtkShaderProgram * BackBlendProgram
void InitDepthTexture(vtkTextureObject *tex, const vtkRenderState *s)
void SwapTargets()
Swap the src/dest render targets:
void Initialize(const vtkRenderState *s)
Allocate and configure FBOs and textures.
void SetCurrentStage(ShaderStage stage)
abstract superclass for all actors, volumes and annotations
void Prepare()
Fill textures with initial values, bind the framebuffer.
unsigned int OcclusionQueryId
static vtkDualDepthPeelingPass * New()
Context in which a vtkRenderPass will render.
vtkOpenGLBufferObject * CopyDepthVBO
Interface to OpenGL framebuffer object.
vtkOpenGLVertexArrayObject * BlendVAO
The VertexArrayObject class uses, or emulates, vertex array objects.
vtkOpenGLVertexArrayObject * BackBlendVAO
abstract class specifies interface to map data
vtkDualDepthPeelingPass()