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 ()
GLES2FBOManager * | getManager ()
const GLES2SurfaceDesc & | getSurface (size_t attachment)

## Private Member Functions

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

## Private Attributes

GLES2FBOManager * | mManager
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

Ogre::GLES2FrameBufferObject::GLES2FrameBufferObject | ( | GLES2FBOManager * | manager,
|  | uint | fsaa
| ) |  |

Ogre::GLES2FrameBufferObject::~GLES2FrameBufferObject | ( |  | ) |

## Member Function Documentation

void Ogre::GLES2FrameBufferObject::attachDepthBuffer | ( | DepthBuffer * | depthBuffer | ) |

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.

void Ogre::GLES2FrameBufferObject::bind | ( |  | ) |

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

void Ogre::GLES2FrameBufferObject::detachDepthBuffer | ( |  | ) |

PixelFormat Ogre::GLES2FrameBufferObject::getFormat | ( |  | ) |

GLsizei Ogre::GLES2FrameBufferObject::getFSAA | ( |  | ) |

size_t Ogre::GLES2FrameBufferObject::getHeight | ( |  | ) |

GLES2FBOManager* Ogre::GLES2FrameBufferObject::getManager | ( |  | ) |

Definition at line 77 of file OgreGLES2FrameBufferObject.h.

const GLES2SurfaceDesc& Ogre::GLES2FrameBufferObject::getSurface | ( | size_t | attachment | ) |

Definition at line 78 of file OgreGLES2FrameBufferObject.h.

size_t Ogre::GLES2FrameBufferObject::getWidth | ( |  | ) |

Accessors.

void Ogre::GLES2FrameBufferObject::initialise | ( |  | ) | `[private]`

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

void Ogre::GLES2FrameBufferObject::swapBuffers | ( |  | ) |

Swap buffers - only useful when using multisample buffers.

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

Unbind attachment.

## Member Data Documentation

GLES2SurfaceDesc Ogre::GLES2FrameBufferObject::mColour[OGRE_MAX_MULTIPLE_RENDER_TARGETS]`[private]`

Definition at line 88 of file OgreGLES2FrameBufferObject.h.

GLES2SurfaceDesc Ogre::GLES2FrameBufferObject::mDepth`[private]`

Definition at line 85 of file OgreGLES2FrameBufferObject.h.

GLuint Ogre::GLES2FrameBufferObject::mFB`[private]`

Definition at line 82 of file OgreGLES2FrameBufferObject.h.

GLES2FBOManager* Ogre::GLES2FrameBufferObject::mManager`[private]`

Definition at line 80 of file OgreGLES2FrameBufferObject.h.

GLES2SurfaceDesc Ogre::GLES2FrameBufferObject::mMultisampleColourBuffer`[private]`

Definition at line 84 of file OgreGLES2FrameBufferObject.h.

GLuint Ogre::GLES2FrameBufferObject::mMultisampleFB`[private]`

Definition at line 83 of file OgreGLES2FrameBufferObject.h.

GLsizei Ogre::GLES2FrameBufferObject::mNumSamples`[private]`

Definition at line 81 of file OgreGLES2FrameBufferObject.h.

GLES2SurfaceDesc Ogre::GLES2FrameBufferObject::mStencil`[private]`

Definition at line 86 of file OgreGLES2FrameBufferObject.h.

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

- OgreGLES2FrameBufferObject.h

Copyright © 2012 Torus Knot Software Ltd
This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.
Last modified Sun Sep 2 2012 07:28:01