GL3+ doesn't support mapping the same buffer twice even if the regions don't overlap.
More...
|
| | 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.
|
| |
| void | flush (size_t ticket, size_t start, size_t count) |
| | Flushes the region of the given ticket. start is 0-based.
|
| |
| 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!!!
|
| |
| void *RESTRICT_ALIAS_RETURN | map (size_t start, size_t count, size_t &outTicket) |
| | Assumes mVboName is already bound to GL_COPY_WRITE_BUFFER!!!
|
| |
| void | unmap (size_t ticket) |
| | Unmaps given ticket (got from.
|
| |
| void | unmap (size_t ticket) |
| | Unmaps given ticket (got from.
|
| |
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.