Buffer.hpp 512 B

12345678910111213141516171819202122232425262728
  1. #ifndef PARTICLE_BUFFER
  2. #define PARTICLE_BUFFER
  3. #include <iostream>
  4. /* OpenGL */
  5. #include "glad/glad.h"
  6. #include <GLFW/glfw3.h>
  7. class Buffer
  8. {
  9. private:
  10. GLuint m_buffer = 0;
  11. public:
  12. Buffer() = default;
  13. ~Buffer();
  14. void create();
  15. void set(void const *data, size_t count, size_t size);
  16. void bind();
  17. void bind_base(GLint program, char const *name, int binding);
  18. void unbind();
  19. void get(void *data, size_t count, size_t size);
  20. void release();
  21. };
  22. #endif // PARTICLE_BUFFER