1
0
Fork 0
Univerxel/src/client/render/gl/buffer/Abstract.hpp

28 lines
565 B
C++

#pragma once
#include "../../buffer/Abstract.hpp"
namespace buffer {
/// Abstract OpenGL Buffer
class Abstract {
public:
Abstract(GLenum shape);
virtual ~Abstract();
/// Bind and draw buffer
virtual uint draw(params params) = 0;
protected:
GLenum Shape;
GLuint VertexBufferID;
void enableVertexAttrib();
void disableVertexAttrib();
void enableAllAttribs();
void disableAllAttribs();
void setVertices(const unsigned long size, const void *data);
};
}