Public Member Functions | Private Member Functions | Private Attributes
Ogre::GLES2FrameBufferObject Class Reference

Frame Buffer Object abstraction. More...

#include <OgreGLES2FrameBufferObject.h>

List of all members.

Public Member Functions

 GLES2FrameBufferObject (GLES2FBOManager *manager, uint fsaa)
 ~GLES2FrameBufferObject ()
void bindSurface (size_t attachment, const GLES2SurfaceDesc &target)
 Bind a surface to a certain attachment point.
void unbindSurface (size_t attachment)
 Unbind attachment.
void bind ()
 Bind FrameBufferObject.
void swapBuffers ()
 Swap buffers - only useful when using multisample buffers.
void attachDepthBuffer (DepthBuffer *depthBuffer)
 This function acts very similar to.
void detachDepthBuffer ()
size_t getWidth ()
 Accessors.
size_t getHeight ()
PixelFormat getFormat ()
GLsizei getFSAA ()
GLES2FBOManagergetManager ()
const GLES2SurfaceDescgetSurface (size_t attachment)

Private Member Functions

void initialise ()
 Initialise object (find suitable depth and stencil format).

Private Attributes

GLES2FBOManagermManager
GLsizei mNumSamples
GLuint mFB
GLuint mMultisampleFB
GLES2SurfaceDesc mMultisampleColourBuffer
GLES2SurfaceDesc mDepth
GLES2SurfaceDesc mStencil
GLES2SurfaceDesc mColour [OGRE_MAX_MULTIPLE_RENDER_TARGETS]

Detailed Description

Frame Buffer Object abstraction.

Definition at line 41 of file OgreGLES2FrameBufferObject.h.


Constructor & Destructor Documentation


Member Function Documentation

This function acts very similar to.

See also:
GLES2FBORenderTexture::attachDepthBuffer The difference between D3D & OGL is that D3D setups the DepthBuffer before rendering, while OGL setups the DepthBuffer per FBO. So the DepthBuffer (RenderBuffer) needs to be attached for OGL.

Bind FrameBufferObject.

void Ogre::GLES2FrameBufferObject::bindSurface ( size_t  attachment,
const GLES2SurfaceDesc target 
)

Bind a surface to a certain attachment point.

attachment: 0..OGRE_MAX_MULTIPLE_RENDER_TARGETS-1

Definition at line 77 of file OgreGLES2FrameBufferObject.h.

Definition at line 78 of file OgreGLES2FrameBufferObject.h.

Accessors.

Initialise object (find suitable depth and stencil format).

Must be called every time the bindings change. It fails with an exception (ERR_INVALIDPARAMS) if:

  • Attachment point 0 has no binding
  • Not all bound surfaces have the same size
  • Not all bound surfaces have the same internal format

Swap buffers - only useful when using multisample buffers.

void Ogre::GLES2FrameBufferObject::unbindSurface ( size_t  attachment)

Unbind attachment.


Member Data Documentation

Definition at line 88 of file OgreGLES2FrameBufferObject.h.

Definition at line 85 of file OgreGLES2FrameBufferObject.h.

Definition at line 82 of file OgreGLES2FrameBufferObject.h.

Definition at line 80 of file OgreGLES2FrameBufferObject.h.

Definition at line 84 of file OgreGLES2FrameBufferObject.h.

Definition at line 83 of file OgreGLES2FrameBufferObject.h.

Definition at line 81 of file OgreGLES2FrameBufferObject.h.

Definition at line 86 of file OgreGLES2FrameBufferObject.h.


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

Copyright © 2012 Torus Knot Software Ltd
Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.
Last modified Fri May 25 2012 21:49:28