Go to the documentation of this file.
47 #ifndef vtkDualDepthPeelingPass_h
48 #define vtkDualDepthPeelingPass_h
50 #include "vtkRenderingOpenGL2Module.h"
111 void SetCurrentStage(ShaderStage stage);
116 void FreeGLObjects();
121 void RenderTranslucentPass();
143 void InitializeOcclusionQuery();
144 void CopyOpaqueDepthBuffer();
145 void InitializeDepth();
155 void InitializeTargets();
159 void BlendBackBuffer();
160 void StartOcclusionQuery();
161 void EndOcclusionQuery();
170 void AlphaBlendRender();
172 void BlendFinalImage();
173 void DeleteOcclusionQueryId();
212 #endif // vtkDualDepthPeelingPass_h
TextureName FrontDestination
virtual vtkMTimeType GetShaderStageMTime()
For multi-stage render passes that need to change shader code during a single pass,...
Implements the dual depth peeling algorithm.
static vtkDepthPeelingPass * New()
Implement an Order Independent Transparency render pass.
const vtkRenderState * RenderState
record modification and/or execution time
vtkShaderProgram * CopyDepthProgram
vtkTimeStamp CurrentStageTimeStamp
void PrintSelf(ostream &os, vtkIndent indent)
Methods invoked by print to print information about the object including superclasses.
vtkOpenGLBufferObject * BackBlendVBO
void ReleaseGraphicsResources(vtkWindow *w)
Release graphics resources and ask components to release their own resources.
window superclass for vtkRenderWindow
unsigned int WrittenPixels
vtkTypeUInt64 vtkMTimeType
TextureName DepthDestination
vtkOpenGLBufferObject * BlendVBO
virtual bool SetShaderParameters(vtkShaderProgram *program, vtkAbstractMapper *mapper, vtkProp *prop)
Update the uniforms of the shader program.
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
abstract superclass for all actors, volumes and annotations
virtual void Render(const vtkRenderState *s)
Perform rendering according to a render state s.
unsigned int OcclusionQueryId
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
virtual bool ReplaceShaderValues(std::string &vertexShader, std::string &geometryShader, std::string &fragmentShader, vtkAbstractMapper *mapper, vtkProp *prop)
Is rendering at translucent geometry stage using depth peeling and rendering a layer other than the f...