Commit Graph

11 Commits

Author SHA1 Message Date
vrld 3f365857ee Replace glMapBufferARB() with temp memory + glBufferSubDataARB().
Instead of letting OpenGL manage the memory mapping, allocate a temporary
block of memory upon VBO:map(). Upon VBO::unmap() the block is copied to
graphics memory using glBufferSubDataARB() and then released.

Hopefully this will fix some weird error with Windows XP + old drivers, where
VBOs can be created, but the mapped memory cannot be allocated resulting in
the sprite batch drawing nothing at all.

According to the interwebs this could actually faster than using OpenGL mapped
memory, because there is no unnecessary syncing involved.
2012-03-07 23:24:29 +01:00
vrld 2b6cc4ea8c Move VertexBuffer::Bind implementation to header to hint inlining 2012-03-07 23:01:05 +01:00
vrld 4947498488 Add VertexBuffer::Mapper for RAII vbo mapping 2012-03-07 22:59:23 +01:00
Bart van Strien 386dd53780 Make VertexBuffers use size_t, raising the limit of vertices that can be stored
This means more sprites in SpriteBatches, yay!
2012-01-24 23:02:35 +01:00
Bill Meltsner be55579a22 Happy New Year, have an enormous diff 2012-01-09 02:41:11 -06:00
Bill Meltsner 969c53e592 make love build on OS X again - there's no need to include gl.h directly, GLee.h does that for us in a cross-platform way 2011-12-19 00:28:45 -06:00
Bart van Strien 7c8fff979a Create love.window, abstract SDL out of love.graphics 2011-12-11 16:55:52 +01:00
Bart van Strien 0aae9684b3 Automated formatting fix 2011-11-16 11:32:41 +01:00
rude 480f936815 Added 'VertexBuffer' abstraction. SpriteBatches are now always supported.
Also improved memory usage in SpriteBatch. (No need to retain full copy of
sprites in memory. Can read that data back later to save data from OpenGL
context destruction).
2011-08-12 11:35:14 +02:00
rude 84bf839872 Removed classes which should be implemented in Lua (or need of re-implementation). 2009-07-26 23:08:40 +02:00
rude dcb3dfd83d Initial Mercurial commit. 2009-07-26 15:46:49 +02:00