OGRE  1.10.5
Object-Oriented Graphics Rendering Engine
Ogre::GL3PlusFBOManager Class Reference

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

#include <OgreGL3PlusFBORenderTexture.h>

+ Inheritance diagram for Ogre::GL3PlusFBOManager:

Public Member Functions

 GL3PlusFBOManager (const GL3PlusSupport &support)
 
 ~GL3PlusFBOManager ()
 
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 MultiRenderTargetcreateMultiRenderTarget (const String &name)
 Create a multi render target. More...
 
virtual GL3PlusFBORenderTexturecreateRenderTexture (const String &name, const GL3PlusSurfaceDesc &target, bool writeGamma, uint fsaa)
 Create a texture rendertarget object. More...
 
void getBestDepthStencil (PixelFormat internalFormat, GLenum *depthFormat, GLenum *stencilFormat)
 Get best depth and stencil supported for given internalFormat. More...
 
virtual void getBestDepthStencil (PixelFormat internalFormat, uint32 *depthFormat, uint32 *stencilFormat)
 
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 GLSurfaceDesc &surface)
 Release a render buffer. More...
 
void requestRenderBuffer (const GLSurfaceDesc &surface)
 Request the specify render buffer in case shared somewhere. More...
 
GL3PlusSurfaceDesc 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 GLRTTManagergetSingleton (void)
 Get the singleton instance. More...
 
static GLRTTManagergetSingletonPtr (void)
 Get the singleton instance. More...
 

Detailed Description

Factory for GL Frame Buffer Objects, and related things.

Constructor & Destructor Documentation

◆ GL3PlusFBOManager()

Ogre::GL3PlusFBOManager::GL3PlusFBOManager ( const GL3PlusSupport support)

◆ ~GL3PlusFBOManager()

Ogre::GL3PlusFBOManager::~GL3PlusFBOManager ( )

Member Function Documentation

◆ bind()

void Ogre::GL3PlusFBOManager::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::GLRTTManager.

◆ unbind()

void Ogre::GL3PlusFBOManager::unbind ( RenderTarget target)
inlinevirtual

Unbind a certain render target.

No-op for FBOs.

Implements Ogre::GLRTTManager.

◆ getBestDepthStencil() [1/2]

void Ogre::GL3PlusFBOManager::getBestDepthStencil ( PixelFormat  internalFormat,
GLenum *  depthFormat,
GLenum *  stencilFormat 
)

Get best depth and stencil supported for given internalFormat.

◆ createRenderTexture()

virtual GL3PlusFBORenderTexture* Ogre::GL3PlusFBOManager::createRenderTexture ( const String name,
const GL3PlusSurfaceDesc target,
bool  writeGamma,
uint  fsaa 
)
virtual

Create a texture rendertarget object.

Implements Ogre::GLRTTManager.

◆ createMultiRenderTarget()

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

Create a multi render target.

Reimplemented from Ogre::GLRTTManager.

◆ requestRenderBuffer() [1/2]

GL3PlusSurfaceDesc Ogre::GL3PlusFBOManager::requestRenderBuffer ( GLenum  format,
uint32  width,
uint32  height,
uint  fsaa 
)

Request a render buffer.

If format is GL_NONE, return a zero buffer.

◆ getTemporaryFBO()

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

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

◆ requestRenderBuffer() [2/2]

void Ogre::GLRTTManager::requestRenderBuffer ( const GLSurfaceDesc surface)
inherited

Request the specify render buffer in case shared somewhere.

Ignore silently if surface.buffer is 0.

◆ releaseRenderBuffer()

void Ogre::GLRTTManager::releaseRenderBuffer ( const GLSurfaceDesc surface)
inherited

Release a render buffer.

Ignore silently if surface.buffer is 0.

◆ checkFormat()

bool Ogre::GLRTTManager::checkFormat ( PixelFormat  format)
inlineinherited

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

◆ getBestDepthStencil() [2/2]

virtual void Ogre::GLRTTManager::getBestDepthStencil ( PixelFormat  internalFormat,
uint32 depthFormat,
uint32 stencilFormat 
)
inlinevirtualinherited

Reimplemented in Ogre::GLES2FBOManager.

◆ getSupportedAlternative()

PixelFormat Ogre::GLRTTManager::getSupportedAlternative ( PixelFormat  format)
inherited

Get the closest supported alternative format.

If format is supported, returns format.

◆ getSingleton()

static GLRTTManager& Ogre::GLRTTManager::getSingleton ( void  )
staticinherited

Get the singleton instance.

◆ getSingletonPtr()

static GLRTTManager* Ogre::GLRTTManager::getSingletonPtr ( void  )
staticinherited

Get the singleton instance.


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