Go to the documentation of this file.
53 #ifndef vtkDepthPeelingPass_h
54 #define vtkDepthPeelingPass_h
56 #include "vtkRenderingOpenGL2Module.h"
108 vtkSetClampMacro(OcclusionRatio,
double,0.0,0.5);
109 vtkGetMacro(OcclusionRatio,
double);
118 vtkSetMacro(MaximumNumberOfPeels,
int);
119 vtkGetMacro(MaximumNumberOfPeels,
int);
142 vtkSetMacro(DepthFormat,
int);
vtkTextureObject * OpaqueZTexture
void BlendIntermediatePeels(vtkOpenGLRenderWindow *renWin, bool)
~vtkDepthPeelingPass() override
Destructor.
static vtkDepthPeelingPass * New()
Implement Depth Peeling for use within a framebuffer pass.
void ReleaseGraphicsResources(vtkWindow *w) override
Release graphics resources and ask components to release their own resources.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
record modification and/or execution time
Internal class which encapsulates OpenGL FramebufferObject.
vtkOpenGLFramebufferObject * Framebuffer
vtkDepthPeelingPass()
Default constructor.
Class to make rendering a full screen quad easier.
void BlendFinalPeel(vtkOpenGLRenderWindow *renWin)
window superclass for vtkRenderWindow
void SetOpaqueZTexture(vtkTextureObject *)
The ShaderProgram uses one or more Shader objects.
a simple class to control print indentation
abstracts an OpenGL texture object.
bool PostReplaceShaderValues(std::string &vertexShader, std::string &geometryShader, std::string &fragmentShader, vtkAbstractMapper *mapper, vtkProp *prop) override
Use vtkShaderProgram::Substitute to replace //VTK::XXX:YYY declarations in the shader sources.
int ViewportX
Cache viewport values for depth peeling.
void Render(const vtkRenderState *s) override
Perform rendering according to a render state s.
vtkRenderPass * TranslucentPass
abstract superclass for all actors, volumes and annotations
vtkOpenGLQuadHelper * IntermediateBlend
vtkOpenGLQuadHelper * FinalBlend
Abstract render pass with shader modifications.
bool SetShaderParameters(vtkShaderProgram *program, vtkAbstractMapper *mapper, vtkProp *prop, vtkOpenGLVertexArrayObject *VAO=nullptr) override
Update the uniforms of the shader program.
Context in which a vtkRenderPass will render.
vtkTextureObject * OpaqueRGBATexture
void SetOpaqueRGBATexture(vtkTextureObject *)
virtual void SetTranslucentPass(vtkRenderPass *translucentPass)
bool OwnOpaqueRGBATexture
The VertexArrayObject class uses, or emulates, vertex array objects.
int MaximumNumberOfPeels
In case of depth peeling, define the maximum number of peeling layers.
abstract class specifies interface to map data
double OcclusionRatio
In case of use of depth peeling technique for rendering translucent material, define the threshold un...
Perform part of the rendering of a vtkRenderer.