#include <stdexcept>
-#include <msp/gl/extensions/arb_pixel_buffer_object.h>
-#include <msp/gl/extensions/arb_uniform_buffer_object.h>
-#include <msp/gl/extensions/arb_vertex_buffer_object.h>
#include "buffer.h"
#include "error.h"
#include "mesh.h"
{
if(t!=buffer.type)
Buffer::require_buffer_type(t);
- // Intentionally using bitwise | to avoid short-circuiting
- if(Buffer::set_current(t, &buffer) | set_current(t, i, this))
+ if(set_current(t, i, this))
+ {
+ // The buffer gets bound as a side effect
+ Buffer::set_current(t, &buffer);
glBindBufferRange(t, i, buffer.id, offset, size);
+ }
}
void BufferRange::unbind_from(BufferType t, unsigned i)