#include <stdexcept>
+#include "bindable.h"
#include "buffer.h"
#include "bufferable.h"
void Bufferable::update_buffer() const
{
- const Buffer *old_buffer = Buffer::current(buffer->get_type());
- buffer->bind();
+ BindRestore bind(buffer, buffer->get_type());
if(offset+get_data_size()>=buffer->get_size())
{
const Bufferable *last = this;
}
upload_data();
- if(old_buffer)
- old_buffer->bind_to(buffer->get_type());
- else
- buffer->unbind();
dirty = false;
}