can anyone help me with this? i've been trying for 2 hours to fix this... I don't know why I'm getting this?
Instantiation:
Code:
memento::VertexBuffer<uint> buff;
buff = memento::VertexBuffer<uint>();
Code:
#ifndef VERTEXBUFFERS_H
#define VERTEXBUFFERS_H
#include "Alias.h"
#include "GLlibs.h"
namespace memento{
template<typename NumType>class VertexBuffer{
uint vertexbuffer_buffer;
ulong vertexbuffer_drawtype;
public:
VertexBuffer():vertexbuffer_buffer(glGenBuffers(1, &vertexbuffer_buffer)),
vertexbuffer_drawtype(GL_STATIC_DRAW){}
VertexBuffer(NumType* bufferdata, ubyte drawtype = GL_STATIC_DRAW):
vertexbuffer_buffer(glGenBuffers(1, &vertexbuffer_buffer)),
vertexbuffer_drawtype(drawtype){
setBuffer(bufferdata);
}
~VertexBuffer(){
glDeleteBuffers(1, &vertexbuffer_buffer);
}
void setBuffer(NumType* bufferdata){
bind();
glBufferData(GL_ARRAY_BUFFER, sizeof(bufferdata), bufferdata, vertexbuffer_drawtype);
unbind();
}
void setDrawType(ulong drawtype){vertexbuffer_drawtype = drawtype;}
uint const& getBuffer(){return (vertexbuffer_buffer);}
ulong const& getDrawType(){return (vertexbuffer_drawtype);}
void bind(){
glBindBuffer(GL_ARRAY_BUFFER, vertexbuffer_buffer);
}
static void unbind(){
glBindBuffer(GL_ARRAY_BUFFER, nil);
}
};
};
#endif