remove GLBuffer constructor parameters

This commit is contained in:
Josh Holtrop 2012-09-02 23:16:48 -04:00
parent f9b12c3df0
commit 92eea9e39c
2 changed files with 20 additions and 6 deletions

View File

@ -1,14 +1,27 @@
#include "GLBuffer.h" #include "GLBuffer.h"
GLBuffer::GLBuffer(GLenum target, GLenum usage, const void *ptr, size_t sz) GLBuffer::GLBuffer()
{ {
glGenBuffers(1, &m_id); m_id = 0;
glBindBuffer(target, m_id);
glBufferData(target, sz, ptr, usage);
} }
GLBuffer::~GLBuffer() GLBuffer::~GLBuffer()
{ {
if (m_id > 0)
{
glDeleteBuffers(1, &m_id); glDeleteBuffers(1, &m_id);
}
}
bool GLBuffer::create(GLenum target, GLenum usage, const void *ptr, size_t sz)
{
glGenBuffers(1, &m_id);
if (m_id > 0)
{
glBindBuffer(target, m_id);
glBufferData(target, sz, ptr, usage);
return true;
}
return false;
} }

View File

@ -7,8 +7,9 @@
class GLBuffer class GLBuffer
{ {
public: public:
GLBuffer(GLenum target, GLenum usage, const void *ptr, size_t sz); GLBuffer();
~GLBuffer(); ~GLBuffer();
bool create(GLenum target, GLenum usage, const void *ptr, size_t sz);
GLuint get_id() { return m_id; } GLuint get_id() { return m_id; }
protected: protected:
GLuint m_id; GLuint m_id;