OGRE
2.2.4
Object-Oriented Graphics Rendering Engine
|
GL3+ doesn't support mapping the same buffer twice even if the regions don't overlap. More...
#include <OgreGLES2DynamicBuffer.h>
Public Member Functions | |
GLES2DynamicBuffer (GLuint vboName, GLuint vboSize, GLES2VaoManager *vaoManager, BufferType persistentMethod) | |
~GLES2DynamicBuffer () | |
void | flush (size_t ticket, size_t start, size_t count) |
Flushes the region of the given ticket. start is 0-based. More... | |
GLuint | getVboName (void) const |
void *RESTRICT_ALIAS_RETURN | map (size_t start, size_t count, size_t &outTicket) |
Assumes mVboName is already bound to GL_COPY_WRITE_BUFFER!!! More... | |
void | unmap (size_t ticket) |
Unmaps given ticket (got from. More... | |
GL3+ doesn't support mapping the same buffer twice even if the regions don't overlap.
For performance we keep many buffers as one big buffer, but for compatibility reasons (with GL3/DX10 HW) we treat them as separate buffers.
Ogre::GLES2DynamicBuffer::GLES2DynamicBuffer | ( | GLuint | vboName, |
GLuint | vboSize, | ||
GLES2VaoManager * | vaoManager, | ||
BufferType | persistentMethod | ||
) |
Ogre::GLES2DynamicBuffer::~GLES2DynamicBuffer | ( | ) |
void Ogre::GLES2DynamicBuffer::flush | ( | size_t | ticket, |
size_t | start, | ||
size_t | count | ||
) |
Flushes the region of the given ticket. start is 0-based.
|
inline |
References RESTRICT_ALIAS_RETURN.
void* RESTRICT_ALIAS_RETURN Ogre::GLES2DynamicBuffer::map | ( | size_t | start, |
size_t | count, | ||
size_t & | outTicket | ||
) |
Assumes mVboName is already bound to GL_COPY_WRITE_BUFFER!!!
void Ogre::GLES2DynamicBuffer::unmap | ( | size_t | ticket | ) |
Unmaps given ticket (got from.