OGRE-Next  2.3
Object-Oriented Graphics Rendering Engine
Ogre::GLES2FBOManager Class Reference

Factory for GL ES 2 Frame Buffer Objects, and related things. More...

#include <OgreGLES2FBORenderTexture.h>

+ Inheritance diagram for Ogre::GLES2FBOManager:

Public Member Functions

 GLES2FBOManager ()
 
 ~GLES2FBOManager ()
 
void _reload ()
 Detects all supported fbo's and recreates the tempory fbo. More...
 
void bind (RenderTarget *target)
 Bind a certain render target if it is a FBO. More...
 
bool checkFormat (PixelFormat format)
 Check if a certain format is usable as FBO rendertarget format. More...
 
virtual MultiRenderTarget * createMultiRenderTarget (const String &name)
 Create a multi render target. More...
 
virtual GLES2FBORenderTexturecreateRenderTexture (const String &name, const GLES2SurfaceDesc &target, bool writeGamma, uint fsaa)
 Create a texture rendertarget object. More...
 
virtual void getBestDepthStencil (GLenum internalFormat, GLenum *depthFormat, GLenum *stencilFormat)
 
virtual void getBestDepthStencil (PixelFormat depthFormat, PixelFormat fboFormat, GLenum *outDepthFormat, GLenum *outStencilFormat)
 Get best depth and stencil supported for given internalFormat. More...
 
virtual PixelFormat getSupportedAlternative (PixelFormat format)
 Get the closest supported alternative format. More...
 
GLuint getTemporaryFBO (size_t i)
 Get a FBO without depth/stencil for temporary use, like blitting between textures. More...
 
void releaseRenderBuffer (const GLES2SurfaceDesc &surface)
 Release a render buffer. More...
 
void requestRenderBuffer (const GLES2SurfaceDesc &surface)
 Request the specify render buffer in case shared somewhere. More...
 
GLES2SurfaceDesc requestRenderBuffer (GLenum format, uint32 width, uint32 height, uint fsaa)
 Request a render buffer. More...
 
void unbind (RenderTarget *target)
 Unbind a certain render target. More...
 

Static Public Member Functions

static GLES2RTTManagergetSingleton ()
 
static GLES2RTTManagergetSingletonPtr ()
 

Detailed Description

Factory for GL ES 2 Frame Buffer Objects, and related things.

Constructor & Destructor Documentation

◆ GLES2FBOManager()

Ogre::GLES2FBOManager::GLES2FBOManager ( )

◆ ~GLES2FBOManager()

Ogre::GLES2FBOManager::~GLES2FBOManager ( )

Member Function Documentation

◆ _reload()

void Ogre::GLES2FBOManager::_reload ( )

Detects all supported fbo's and recreates the tempory fbo.

◆ bind()

void Ogre::GLES2FBOManager::bind ( RenderTarget *  target)
virtual

Bind a certain render target if it is a FBO.

If it is not a FBO, bind the main frame buffer.

Implements Ogre::GLES2RTTManager.

◆ checkFormat()

bool Ogre::GLES2FBOManager::checkFormat ( PixelFormat  format)
inlinevirtual

Check if a certain format is usable as FBO rendertarget format.

Implements Ogre::GLES2RTTManager.

◆ createMultiRenderTarget()

virtual MultiRenderTarget* Ogre::GLES2FBOManager::createMultiRenderTarget ( const String name)
virtual

Create a multi render target.

Reimplemented from Ogre::GLES2RTTManager.

◆ createRenderTexture()

virtual GLES2FBORenderTexture* Ogre::GLES2FBOManager::createRenderTexture ( const String name,
const GLES2SurfaceDesc target,
bool  writeGamma,
uint  fsaa 
)
virtual

Create a texture rendertarget object.

Implements Ogre::GLES2RTTManager.

◆ getBestDepthStencil() [1/2]

virtual void Ogre::GLES2RTTManager::getBestDepthStencil ( GLenum  internalFormat,
GLenum *  depthFormat,
GLenum *  stencilFormat 
)
inlinevirtualinherited

◆ getBestDepthStencil() [2/2]

virtual void Ogre::GLES2FBOManager::getBestDepthStencil ( PixelFormat  depthFormat,
PixelFormat  fboFormat,
GLenum *  outDepthFormat,
GLenum *  outStencilFormat 
)
virtual

Get best depth and stencil supported for given internalFormat.

◆ getSingleton()

static GLES2RTTManager & Ogre::Singleton< GLES2RTTManager >::getSingleton ( )
inlinestaticinherited

◆ getSingletonPtr()

static GLES2RTTManager * Ogre::Singleton< GLES2RTTManager >::getSingletonPtr ( )
inlinestaticinherited

◆ getSupportedAlternative()

virtual PixelFormat Ogre::GLES2RTTManager::getSupportedAlternative ( PixelFormat  format)
virtualinherited

Get the closest supported alternative format.

If format is supported, returns format.

◆ getTemporaryFBO()

GLuint Ogre::GLES2FBOManager::getTemporaryFBO ( size_t  i)

Get a FBO without depth/stencil for temporary use, like blitting between textures.

◆ releaseRenderBuffer()

void Ogre::GLES2FBOManager::releaseRenderBuffer ( const GLES2SurfaceDesc surface)

Release a render buffer.

Ignore silently if surface.buffer is 0.

◆ requestRenderBuffer() [1/2]

void Ogre::GLES2FBOManager::requestRenderBuffer ( const GLES2SurfaceDesc surface)

Request the specify render buffer in case shared somewhere.

Ignore silently if surface.buffer is 0.

◆ requestRenderBuffer() [2/2]

GLES2SurfaceDesc Ogre::GLES2FBOManager::requestRenderBuffer ( GLenum  format,
uint32  width,
uint32  height,
uint  fsaa 
)

Request a render buffer.

If format is GL_NONE, return a zero buffer.

◆ unbind()

void Ogre::GLES2FBOManager::unbind ( RenderTarget *  target)
inlinevirtual

Unbind a certain render target.

No-op for FBOs.

Implements Ogre::GLES2RTTManager.


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