OGRE  14.2
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) override
 Bind FrameBufferObject. More...
 
void detachDepthBuffer ()
 
GL3PlusFBOManagergetManager ()
 
void swapBuffers ()
 Swap buffers - only useful when using multisample buffers. More...
 
- Public Member Functions inherited from Ogre::GLFrameBufferObjectCommon
 GLFrameBufferObjectCommon (int32 fsaa)
 
virtual ~GLFrameBufferObjectCommon ()
 
void bindSurface (size_t attachment, const GLSurfaceDesc &target)
 Bind a surface to a certain attachment point. More...
 
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
 
const GLSurfaceDescgetSurface (size_t attachment) const
 
uint32 getWidth () const
 
void notifyContextDestroyed (GLContext *context)
 
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)
overridevirtual

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

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