#include <msp/gl/extensions/arb_buffer_storage.h>
#include <msp/gl/extensions/arb_direct_state_access.h>
#include <msp/gl/extensions/arb_map_buffer_range.h>
+#include <msp/gl/extensions/arb_vertex_buffer_object.h>
#include <msp/gl/extensions/khr_debug.h>
+#include <msp/gl/extensions/oes_mapbuffer.h>
#include <msp/strings/format.h>
#include "buffer.h"
-#include "deviceinfo.h"
#include "error.h"
-#include "misc.h"
-#include "vertexsetup.h"
using namespace std;
data(0);
}
-void Buffer::set_usage(BufferUsage)
-{
-}
-
void Buffer::data(const void *d)
{
if(size==0)
return sub_data(0, size, d);
if(ARB_direct_state_access)
- glNamedBufferData(id, size, d, STATIC_DRAW);
+ glNamedBufferData(id, size, d, GL_STATIC_DRAW);
else
{
bind_scratch();
- glBufferData(GL_ARRAY_BUFFER, size, d, STATIC_DRAW);
+ glBufferData(GL_ARRAY_BUFFER, size, d, GL_STATIC_DRAW);
}
allocated = true;
}
-void Buffer::data(unsigned sz, const void *d)
-{
- if(size==0)
- storage(sz);
- else if(sz!=size)
- throw incompatible_data("Buffer::data");
-
- data(d);
-}
-
void Buffer::sub_data(unsigned off, unsigned sz, const void *d)
{
if(size==0)