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.