fekalnigtacko/src/gfx/buffer_object.hpp
2025-12-29 21:33:54 +01:00

31 lines
487 B
C++

#pragma once
#include "client/gl.hpp"
#include "client/utils.hpp"
namespace gfx
{
/**
* \brief Wrapper pro OpenGL buffer object
*/
class BufferObject : public NonCopyableNonMovable
{
GLuint m_id;
GLenum m_target;
GLenum m_usage;
size_t m_size;
public:
BufferObject(GLenum target, GLenum usage);
~BufferObject();
void Bind() const;
void Unbind() const;
void SetData(const void* data, size_t size);
GLuint GetId() const { return m_id; }
};
}