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

28 lines
644 B
C++

#pragma once
#include <GL/gl3w.h>
#include <vector>
#include <glm/glm.hpp>
#include "Abstract.hpp"
namespace buffer {
/// OpenGL VertexBuffer with Colors
class Colored: public Abstract {
public:
Colored(GLenum shape, const unsigned long count, const std::vector<glm::vec3> &vertices, const std::vector<glm::vec4> &colors);
virtual ~Colored();
void enableAllAttribs();
void disableAllAttribs();
uint draw(params params) override;
private:
unsigned long ElementCount;
GLuint ColorBufferID;
void setColors(const unsigned long size, const void *data);
};
}