OGRE  1.12.4
Object-Oriented Graphics Rendering Engine
Ogre::GL3PlusFrameBufferObject Class Reference

Frame Buffer Object abstraction. More...

#include <OgreGL3PlusFrameBufferObject.h>

+ Inheritance diagram for Ogre::GL3PlusFrameBufferObject:

Public Member Functions

 GL3PlusFrameBufferObject (GL3PlusFBOManager *manager, uint fsaa)
 
 ~GL3PlusFrameBufferObject ()
 
void attachDepthBuffer (DepthBuffer *depthBuffer)
 This function acts very similar to. More...
 
bool bind (bool recreateIfNeeded)
 Bind FrameBufferObject. More...
 
void bindSurface (size_t attachment, const GLSurfaceDesc &target)
 Bind a surface to a certain attachment point. More...
 
void detachDepthBuffer ()
 
GLContextgetContext () const
 
PixelFormat getFormat () const
 
int32 getFSAA () const
 Accessors. More...
 
uint32 getGLFBOID () const
 Get the GL id for the FBO. More...
 
uint32 getGLMultisampleFBOID () const
 Get the GL id for the multisample FBO. More...
 
uint32 getHeight () const
 
GL3PlusFBOManagergetManager ()
 
const GLSurfaceDescgetSurface (size_t attachment) const
 
uint32 getWidth () const
 
void notifyContextDestroyed (GLContext *context)
 
void swapBuffers ()
 Swap buffers - only useful when using multisample buffers. More...
 
void unbindSurface (size_t attachment)
 Unbind attachment. More...
 

Detailed Description

Frame Buffer Object abstraction.

Constructor & Destructor Documentation

◆ GL3PlusFrameBufferObject()

Ogre::GL3PlusFrameBufferObject::GL3PlusFrameBufferObject ( GL3PlusFBOManager manager,
uint  fsaa 
)

◆ ~GL3PlusFrameBufferObject()

Ogre::GL3PlusFrameBufferObject::~GL3PlusFrameBufferObject ( )

Member Function Documentation

◆ bind()

bool Ogre::GL3PlusFrameBufferObject::bind ( bool  recreateIfNeeded)
virtual

Bind FrameBufferObject.

Attempt to bind on incompatible GL context will cause FBO destruction and optional recreation.

Implements Ogre::GLFrameBufferObjectCommon.

◆ swapBuffers()

void Ogre::GL3PlusFrameBufferObject::swapBuffers ( )

Swap buffers - only useful when using multisample buffers.

◆ attachDepthBuffer()

void Ogre::GL3PlusFrameBufferObject::attachDepthBuffer ( DepthBuffer depthBuffer)

This function acts very similar to.

See also
GL3PlusFBORenderTexture::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.

◆ detachDepthBuffer()

void Ogre::GL3PlusFrameBufferObject::detachDepthBuffer ( )

◆ getManager()

GL3PlusFBOManager* Ogre::GL3PlusFrameBufferObject::getManager ( )
inline

◆ bindSurface()

void Ogre::GLFrameBufferObjectCommon::bindSurface ( size_t  attachment,
const GLSurfaceDesc target 
)
inherited

Bind a surface to a certain attachment point.

attachment: 0..OGRE_MAX_MULTIPLE_RENDER_TARGETS-1

◆ unbindSurface()

void Ogre::GLFrameBufferObjectCommon::unbindSurface ( size_t  attachment)
inherited

Unbind attachment.

◆ getFSAA()

int32 Ogre::GLFrameBufferObjectCommon::getFSAA ( ) const
inlineinherited

Accessors.

◆ getWidth()

uint32 Ogre::GLFrameBufferObjectCommon::getWidth ( ) const
inherited

◆ getHeight()

uint32 Ogre::GLFrameBufferObjectCommon::getHeight ( ) const
inherited

◆ getFormat()

PixelFormat Ogre::GLFrameBufferObjectCommon::getFormat ( ) const
inherited

◆ getContext()

GLContext* Ogre::GLFrameBufferObjectCommon::getContext ( ) const
inlineinherited

◆ getGLFBOID()

uint32 Ogre::GLFrameBufferObjectCommon::getGLFBOID ( ) const
inlineinherited

Get the GL id for the FBO.

◆ getGLMultisampleFBOID()

uint32 Ogre::GLFrameBufferObjectCommon::getGLMultisampleFBOID ( ) const
inlineinherited

Get the GL id for the multisample FBO.

◆ getSurface()

const GLSurfaceDesc& Ogre::GLFrameBufferObjectCommon::getSurface ( size_t  attachment) const
inlineinherited

◆ notifyContextDestroyed()

void Ogre::GLFrameBufferObjectCommon::notifyContextDestroyed ( GLContext context)
inlineinherited

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