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();
129 vtkSetMacro(DepthBufferNeeded,
bool);
130 vtkGetMacro(DepthBufferNeeded,
bool);
139 void SetNumberOfRenderTargets(
unsigned int);
140 vtkGetMacro(NumberOfRenderTargets,
unsigned int);
146 unsigned int GetMaximumNumberOfActiveTargets();
151 unsigned int GetMaximumNumberOfRenderTargets();
155 vtkGetVector2Macro(LastSize,
int);
164 int CheckFrameBufferStatus(
unsigned int mode);
183 void CreateDepthBuffer(
int width,
int height,
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
unsigned int NumberOfRenderTargets
void SetActiveBuffer(unsigned int index)
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
abstracts an OpenGL pixel buffer object.
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.
create a window for renderers to draw into