3 #include "uniforms-gl.h"
5 UniformBufferGL::UniformBufferGL()
10 UniformBufferGL::~UniformBufferGL()
15 bool UniformBufferGL::create(int size)
17 glGenBuffers(1, &ubo);
18 glBindBuffer(GL_UNIFORM_BUFFER, ubo);
19 glBufferData(GL_UNIFORM_BUFFER, size, 0, GL_STREAM_DRAW);
21 return UniformBuffer::create(size);
24 void UniformBufferGL::destroy()
26 glDeleteBuffers(1, &ubo);
29 void UniformBufferGL::bind(int binding) const
31 //glBindBuffer(GL_UNIFORM_BUFFER, ubo);
32 glBindBufferBase(GL_UNIFORM_BUFFER, binding, ubo);
35 void UniformBufferGL::update(void *data)
37 glBindBuffer(GL_UNIFORM_BUFFER, ubo);
38 glBufferSubData(GL_UNIFORM_BUFFER, 0, size, data);