VISH  0.2
Classes | Public Types | Public Member Functions | Static Public Member Functions | Protected Attributes
Wizt::Framebuffer Class Reference

Class interface to the OpenGL Framebuffer API. More...

#include </home/werner/origo/vish/ocean/GLvish/Framebuffer.hpp>

List of all members.

Classes

Public Types

Public Member Functions

Static Public Member Functions

Protected Attributes


Detailed Description

Class interface to the OpenGL Framebuffer API.

http://oss.sgi.com/projects/ogl-sample/registry/EXT/framebuffer_object.txt

Application-created framebuffer objects (i.e., those with a non-zero name) differ from the default window-system-provided framebuffer in a few important ways. First and foremost, unlike the window-system-provided framebuffer, application-created-framebuffers have modifiable attachment points for each logical buffer in the framebuffer. Framebuffer-attachable images can be attached to and detached from these attachment points, which are described further in section 4.4.2. Also, the size and format of the images attached to application-created framebuffers are controlled entirely within the GL interface, and are not affected by window-system events, such as pixel format selection, window resizes, and display mode changes.

Additionally, when rendering to or reading from an application created-framebuffer object,


Constructor & Destructor Documentation

Wizt::Framebuffer::Framebuffer ( )

Call GenFramebuffer(1).

Constructor and all member functions MUST be called with a valid OpenGL context.


Member Function Documentation

bool Wizt::Framebuffer::attachColorBuffer ( const MemCore::RefPtr< Renderbuffer > &  Rb,
int  i = 0 
) [inline]

Render to render buffer pointer.

Deprecated:
void Wizt::Framebuffer::bind_for_reading ( ) const

Select this framebuffer for read operations from attached Renderbuffers().

Note that multisample renderbuffers cannot be read (if they are not bound to the screen) and need to be copied to a non-multisample framebuffer first.

bool Wizt::Framebuffer::Blit ( const MemCore::RefPtr< Framebuffer > &  Source,
GLint  srcX0,
GLint  srcY0,
GLint  srcX1,
GLint  srcY1,
GLint  dstX0,
GLint  dstY0,
GLint  dstX1,
GLint  dstY1,
GLbitfield  mask,
GLenum  filter 
) const

Copy framebuffer content from a source framebuffer to another one.

This operation affects the framebuffer bindings. http://www.opengl.org/registry/specs/EXT/framebuffer_blit.txt

bool Wizt::Framebuffer::BlitScreen ( const MemCore::RefPtr< Framebuffer > &  Source,
GLint  srcX0,
GLint  srcY0,
GLint  srcX1,
GLint  srcY1,
GLint  dstX0,
GLint  dstY0,
GLint  dstX1,
GLint  dstY1,
GLbitfield  mask,
GLenum  filter 
) [static]

Copy framebuffer content to the screen.

After this operation, the source will be set as read framebuffer, the draw buffer will be set to the screen.

GLuint Wizt::Framebuffer::id ( ) const [inline]

Return the OpenGL ID.

This is usually not required since this class should provide a complete API.

MemCore::RefPtr<Renderbuffer> Wizt::Framebuffer::mkRenderBuffer ( GLenum  internalformat) const [inline]

Return a compatible renderbuffer object.

This only works if there was at least one Renderbuffer already attached to this Framebuffer.


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