28 #ifndef vtkFrameBufferObject_h
29 #define vtkFrameBufferObject_h
69 bool Start(
int width,
int height,
bool shaderSupportsTextureInt);
70 bool StartNonOrtho(
int width,
int height,
bool shaderSupportsTextureInt);
78 void RenderQuad(
int minX,
int maxX,
int minY,
int maxY);
91 this->SetActiveBuffers(1, &index);
99 void SetActiveBuffers(
int numbuffers,
unsigned int indices[]);
113 unsigned int zslice=0);
117 void RemoveColorBuffer(
unsigned int index);
118 void RemoveAllColorBuffers();
123 void RemoveDepthBuffer();
139 void SetNumberOfRenderTargets(
unsigned int);
146 unsigned int GetMaximumNumberOfActiveTargets();
151 unsigned int GetMaximumNumberOfRenderTargets();
164 int CheckFrameBufferStatus(
unsigned int mode);
189 void CreateColorBuffers(
193 bool shaderSupportsTextureInt);
196 void DestroyDepthBuffer();
197 void DestroyColorBuffers();
200 void ActivateBuffers();
203 void DisplayFrameBufferAttachments();
206 void DisplayFrameBufferAttachment(
unsigned int uattachment);
209 void DisplayDrawBuffers();
212 void DisplayReadBuffer();
215 void DisplayBuffer(
int value);
abstract base class for most VTK objects
std::vector< unsigned int > ActiveBuffers
#define vtkGetMacro(name, type)
GLsizei const GLfloat * value
unsigned int NumberOfRenderTargets
void SetActiveBuffer(unsigned int index)
#define vtkTypeMacro(thisClass, superclass)
GLint GLint GLsizei GLsizei height
vtkWeakPointer< vtkRenderWindow > Context
std::vector< vtkSmartPointer< vtkTextureObject > > ColorBuffers
std::vector< vtkSmartPointer< vtkTextureObject > > UserColorBuffers
virtual void PrintSelf(ostream &os, vtkIndent indent)
a simple class to control print indentation
vtkSmartPointer< vtkTextureObject > UserDepthBuffer
std::vector< unsigned int > UserZSlices
#define VTKRENDERINGOPENGL_EXPORT
GLint GLint GLsizei width
abstracts an OpenGL pixel buffer object.
GLuint GLuint GLsizei GLenum const GLvoid * indices
Interface class for querying and using OpenGL extensions.
internal class which encapsulates OpenGL frame buffer object. Not to be used directly.
abstracts an OpenGL texture object.
#define vtkGetVector2Macro(name, type)
create a window for renderers to draw into
#define vtkSetMacro(name, type)