VTK  9.1.20211018
Public Member Functions | Public Attributes | List of all members
vtkOpenGLQuadHelper Class Reference

Class to make rendering a full screen quad easier. More...

#include <vtkOpenGLQuadHelper.h>

Collaboration diagram for vtkOpenGLQuadHelper:

Public Member Functions

 vtkOpenGLQuadHelper (vtkOpenGLRenderWindow *, const char *vs, const char *fs, const char *gs)
 ~vtkOpenGLQuadHelper ()
void Render ()
void ReleaseGraphicsResources (vtkWindow *)
 Release graphics resources. More...

Public Attributes

vtkTimeStamp ShaderSourceTime
unsigned int ShaderChangeValue

Detailed Description

Class to make rendering a full screen quad easier.

vtkOpenGLQuadHelper is designed to be used by classes in VTK that need to render a quad to the screen with a shader program. This happens often with render passes or other advanced rendering techniques.

Note that when releasing graphics resources instances of this class should be destroyed. A common use pattern is to conditionally create the instance where used and delete it in ReleaseGraphicsResources and the destructor.

Example usage:

if (!this->QuadHelper)
this->QuadHelper = vtkOpenGLQualHelper(renWin, vs, fs, gs);
this->QuadHelper->Program->SetUniformi("aTexture", aTexture->GetTextureUnit());
See also

Definition at line 57 of file vtkOpenGLQuadHelper.h.

Constructor & Destructor Documentation

◆ vtkOpenGLQuadHelper()

vtkOpenGLQuadHelper::vtkOpenGLQuadHelper ( vtkOpenGLRenderWindow ,
const char *  vs,
const char *  fs,
const char *  gs 

◆ ~vtkOpenGLQuadHelper()

vtkOpenGLQuadHelper::~vtkOpenGLQuadHelper ( )

Member Function Documentation

◆ Render()

void vtkOpenGLQuadHelper::Render ( )

◆ ReleaseGraphicsResources()

void vtkOpenGLQuadHelper::ReleaseGraphicsResources ( vtkWindow )

Release graphics resources.

In general, there's no need to call this explicitly, since vtkOpenGLQuadHelper will invoke it appropriately when needed.

Member Data Documentation

◆ Program

vtkShaderProgram* vtkOpenGLQuadHelper::Program

Definition at line 60 of file vtkOpenGLQuadHelper.h.

◆ ShaderSourceTime

vtkTimeStamp vtkOpenGLQuadHelper::ShaderSourceTime

Definition at line 61 of file vtkOpenGLQuadHelper.h.


vtkOpenGLVertexArrayObject* vtkOpenGLQuadHelper::VAO

Definition at line 62 of file vtkOpenGLQuadHelper.h.

◆ ShaderChangeValue

unsigned int vtkOpenGLQuadHelper::ShaderChangeValue

Definition at line 63 of file vtkOpenGLQuadHelper.h.

The documentation for this class was generated from the following file: