cginternals / globjects

C++ library strictly wrapping OpenGL objects.
https://globjects.org
MIT License
538 stars 59 forks source link

Add convenience methods to specify Buffer data from a plain struct #335

Closed j-o closed 7 years ago

j-o commented 7 years ago

This simplifies data upload to buffers containing control structures (e.g., uniform buffers) Example:

struct UniformBufferData
{
    glm::mat viewProjection;
    glm::vec2 viewport;
    float viewport;
};

auto data = UniformBufferData{ ... };
myBuffer->setData(data, GL_STATIC_DRAW); // new
myBuffer->setData(sizeof(UniformBufferData), &data, GL_STATIC_DRAW); // old