OpenSceneGraph
3.0.1
|
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. | |
virtual void | resizeGLObjectBuffers (unsigned int maxSize) |
Resize any per context GLObject buffers to specified size. | |
virtual void | releaseGLObjects (osg::State *=0) const |
If State is non-zero, this function releases any associated OpenGL objects for the specified graphics context. | |
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::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] |
virtual void osg::FrameBufferObject::releaseGLObjects | ( | osg::State * | = 0 | ) | const [virtual] |
If State is non-zero, this function releases any associated OpenGL objects for the specified graphics context.
Otherwise, releases OpenGL objexts for all graphics contexts.
Reimplemented from osg::StateAttribute.
virtual void osg::FrameBufferObject::resizeGLObjectBuffers | ( | unsigned int | maxSize | ) | [virtual] |
Resize any per context GLObject buffers to specified size.
Reimplemented from osg::StateAttribute.
void osg::FrameBufferObject::setAttachment | ( | BufferComponent | attachment_point, |
const FrameBufferAttachment & | attachment | ||
) |
void osg::FrameBufferObject::updateDrawBuffers | ( | ) | [protected] |
![]() | Generated at Mon Oct 3 2011 12:39:42 for the OpenSceneGraph by doxygen 1.7.5. |