OpenSceneGraph 2.8.3
|
Public Types | |
enum | BindTarget { READ_FRAMEBUFFER = GL_READ_FRAMEBUFFER_EXT, DRAW_FRAMEBUFFER = GL_DRAW_FRAMEBUFFER_EXT, READ_DRAW_FRAMEBUFFER = GL_FRAMEBUFFER_EXT } |
typedef std::map < Camera::BufferComponent, FrameBufferAttachment > | AttachmentMap |
typedef std::vector< GLenum > | MultipleRenderingTargets |
typedef Camera::BufferComponent | BufferComponent |
Public Member Functions | |
FrameBufferObject () | |
FrameBufferObject (const FrameBufferObject ©, const CopyOp ©op=CopyOp::SHALLOW_COPY) | |
META_StateAttribute (osg, FrameBufferObject,(StateAttribute::Type) 0x101010) | |
const AttachmentMap & | getAttachmentMap () const |
void | setAttachment (BufferComponent attachment_point, const FrameBufferAttachment &attachment) |
const FrameBufferAttachment & | getAttachment (BufferComponent attachment_point) const |
bool | hasAttachment (BufferComponent attachment_point) const |
bool | hasMultipleRenderingTargets () const |
const MultipleRenderingTargets & | getMultipleRenderingTargets () const |
bool | isMultisample () const |
int | compare (const StateAttribute &sa) const |
Return -1 if *this < *rhs, 0 if *this==*rhs, 1 if *this>*rhs. | |
void | apply (State &state) const |
apply the OpenGL state attributes. | |
void | apply (State &state, BindTarget target) const |
Bind the FBO as either the read or draw target, or both. | |
Static Public Member Functions | |
static void | deleteFrameBufferObject (unsigned int contextID, GLuint program) |
Mark internal FBO for deletion. | |
static void | flushDeletedFrameBufferObjects (unsigned int contextID, double currentTime, double &availableTime) |
flush all the cached FBOs which need to be deleted in the OpenGL context related to contextID. | |
static void | discardDeletedFrameBufferObjects (unsigned int contextID) |
discard all the cached FBOs which need to be deleted in the OpenGL context related to contextID. | |
Protected Member Functions | |
virtual | ~FrameBufferObject () |
FrameBufferObject & | operator= (const FrameBufferObject &) |
void | updateDrawBuffers () |
void | dirtyAll () |
GLenum | convertBufferComponentToGLenum (BufferComponent attachment_point) const |
typedef std::map<Camera::BufferComponent, FrameBufferAttachment> osg::FrameBufferObject::AttachmentMap |
typedef std::vector<GLenum> osg::FrameBufferObject::MultipleRenderingTargets |
osg::FrameBufferObject::FrameBufferObject | ( | ) |
osg::FrameBufferObject::FrameBufferObject | ( | const FrameBufferObject & | copy, |
const CopyOp & | copyop = CopyOp::SHALLOW_COPY |
||
) |
virtual osg::FrameBufferObject::~FrameBufferObject | ( | ) | [protected, virtual] |
void osg::FrameBufferObject::apply | ( | State & | ) | const [virtual] |
apply the OpenGL state attributes.
The render info for the current OpenGL context is passed in to allow the StateAttribute to obtain details on the the current context and state.
Reimplemented from osg::StateAttribute.
void osg::FrameBufferObject::apply | ( | State & | state, |
BindTarget | target | ||
) | const |
Bind the FBO as either the read or draw target, or both.
int osg::FrameBufferObject::compare | ( | const StateAttribute & | sa | ) | const [virtual] |
Return -1 if *this < *rhs, 0 if *this==*rhs, 1 if *this>*rhs.
Implements osg::StateAttribute.
GLenum osg::FrameBufferObject::convertBufferComponentToGLenum | ( | BufferComponent | attachment_point | ) | const [protected] |
static void osg::FrameBufferObject::deleteFrameBufferObject | ( | unsigned int | contextID, |
GLuint | program | ||
) | [static] |
Mark internal FBO for deletion.
Deletion requests are queued until they can be executed in the proper GL context.
void osg::FrameBufferObject::dirtyAll | ( | ) | [inline, protected] |
References osg::buffered_value< T >::setAllElementsTo().
static void osg::FrameBufferObject::discardDeletedFrameBufferObjects | ( | unsigned int | contextID | ) | [static] |
discard all the cached FBOs which need to be deleted in the OpenGL context related to contextID.
static void osg::FrameBufferObject::flushDeletedFrameBufferObjects | ( | unsigned int | contextID, |
double | currentTime, | ||
double & | availableTime | ||
) | [static] |
flush all the cached FBOs which need to be deleted in the OpenGL context related to contextID.
const FrameBufferAttachment & osg::FrameBufferObject::getAttachment | ( | FrameBufferObject::BufferComponent | attachment_point | ) | const [inline] |
const FrameBufferObject::AttachmentMap & osg::FrameBufferObject::getAttachmentMap | ( | ) | const [inline] |
const MultipleRenderingTargets& osg::FrameBufferObject::getMultipleRenderingTargets | ( | ) | const [inline] |
bool osg::FrameBufferObject::hasAttachment | ( | FrameBufferObject::BufferComponent | attachment_point | ) | const [inline] |
bool osg::FrameBufferObject::hasMultipleRenderingTargets | ( | ) | const [inline] |
bool osg::FrameBufferObject::isMultisample | ( | ) | const |
osg::FrameBufferObject::META_StateAttribute | ( | osg | , |
FrameBufferObject | , | ||
(StateAttribute::Type) | 0x101010 | ||
) |
FrameBufferObject& osg::FrameBufferObject::operator= | ( | const FrameBufferObject & | ) | [inline, protected] |
void osg::FrameBufferObject::setAttachment | ( | BufferComponent | attachment_point, |
const FrameBufferAttachment & | attachment | ||
) |
void osg::FrameBufferObject::updateDrawBuffers | ( | ) | [protected] |
![]() | Generated at Tue Mar 22 2011 13:20:21 for the OpenSceneGraph by doxygen 1.7.3. |