#include "graphicsbuffer.h"
+#include "log.h"
#define GL_GLEXT_PROTOTYPES
#include <SDL_opengl.h>
#include <GL/glext.h>
GraphicsBuffer::GraphicsBuffer()
{
+ m_invalidated = true;
+ m_buffer_size = 0;
SetUsage(BufferUsageStaticDraw);
}
{
GLbitfield access = ((read)?GL_MAP_READ_BIT:0) | ((write)?GL_MAP_WRITE_BIT:0) | ((invalidate)?GL_MAP_INVALIDATE_RANGE_BIT:0);
GLenum target = BufferTypeToGLType(m_buffer_type);
-
+
Bind();
return glMapBufferRange(target, offset, length, access);
glCopyBufferSubData(GL_COPY_READ_BUFFER, GL_COPY_WRITE_BUFFER, 0, 0, m_buffer_size);
glDeleteBuffers(1, &old_buffer);
}
+ m_buffer_size = length;
}