GL3+ doesn't support mapping the same buffer twice even if the regions don't overlap.
More...
#include <OgreNULLDynamicBuffer.h>
|
| GL3PlusDynamicBuffer (GLuint vboName, GLuint vboSize, GL3PlusVaoManager *vaoManager, BufferType persistentMethod) |
|
| GL3PlusDynamicBuffer (GLuint vboName, GLuint vboSize, GL3PlusVaoManager *vaoManager, BufferType persistentMethod) |
|
| ~GL3PlusDynamicBuffer () |
|
| ~GL3PlusDynamicBuffer () |
|
void | flush (size_t ticket, size_t start, size_t count) |
| Flushes the region of the given ticket. start is 0-based. More...
|
|
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 () const |
|
GLuint | getVboName () 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 *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...
|
|
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.
- This class takes care of mapping buffers once while allowing BufferInterface to map subregions of it as if they were separate buffers.
◆ GL3PlusDynamicBuffer() [1/2]
Ogre::GL3PlusDynamicBuffer::GL3PlusDynamicBuffer |
( |
GLuint |
vboName, |
|
|
GLuint |
vboSize, |
|
|
GL3PlusVaoManager * |
vaoManager, |
|
|
BufferType |
persistentMethod |
|
) |
| |
◆ ~GL3PlusDynamicBuffer() [1/2]
Ogre::GL3PlusDynamicBuffer::~GL3PlusDynamicBuffer |
( |
| ) |
|
◆ GL3PlusDynamicBuffer() [2/2]
Ogre::GL3PlusDynamicBuffer::GL3PlusDynamicBuffer |
( |
GLuint |
vboName, |
|
|
GLuint |
vboSize, |
|
|
GL3PlusVaoManager * |
vaoManager, |
|
|
BufferType |
persistentMethod |
|
) |
| |
◆ ~GL3PlusDynamicBuffer() [2/2]
Ogre::GL3PlusDynamicBuffer::~GL3PlusDynamicBuffer |
( |
| ) |
|
◆ flush() [1/2]
void Ogre::GL3PlusDynamicBuffer::flush |
( |
size_t |
ticket, |
|
|
size_t |
start, |
|
|
size_t |
count |
|
) |
| |
Flushes the region of the given ticket. start is 0-based.
◆ flush() [2/2]
void Ogre::GL3PlusDynamicBuffer::flush |
( |
size_t |
ticket, |
|
|
size_t |
start, |
|
|
size_t |
count |
|
) |
| |
Flushes the region of the given ticket. start is 0-based.
◆ getVboName() [1/2]
GLuint Ogre::GL3PlusDynamicBuffer::getVboName |
( |
| ) |
const |
|
inline |
◆ getVboName() [2/2]
GLuint Ogre::GL3PlusDynamicBuffer::getVboName |
( |
| ) |
const |
|
inline |
◆ map() [1/2]
void* RESTRICT_ALIAS_RETURN Ogre::GL3PlusDynamicBuffer::map |
( |
size_t |
start, |
|
|
size_t |
count, |
|
|
size_t & |
outTicket |
|
) |
| |
Assumes mVboName is already bound to GL_COPY_WRITE_BUFFER!!!
◆ map() [2/2]
void* RESTRICT_ALIAS_RETURN Ogre::GL3PlusDynamicBuffer::map |
( |
size_t |
start, |
|
|
size_t |
count, |
|
|
size_t & |
outTicket |
|
) |
| |
Assumes mVboName is already bound to GL_COPY_WRITE_BUFFER!!!
◆ unmap() [1/2]
void Ogre::GL3PlusDynamicBuffer::unmap |
( |
size_t |
ticket | ) |
|
Unmaps given ticket (got from.
- See also
- map). Assumes mVboName is already bound to GL_COPY_WRITE_BUFFER!!! The ticket becomes invalid after this.
◆ unmap() [2/2]
void Ogre::GL3PlusDynamicBuffer::unmap |
( |
size_t |
ticket | ) |
|
Unmaps given ticket (got from.
- See also
- map). Assumes mVboName is already bound to GL_COPY_WRITE_BUFFER!!! The ticket becomes invalid after this.
The documentation for this class was generated from the following files: