public:
using Position = glm::vec3;
using Color = glm::vec3;
- using Normal = glm::vec3;
using Light = float;
using Index = unsigned int;
using Positions = std::vector<Position>;
using Colors = std::vector<Color>;
- using Normals = std::vector<Normal>;
using Lights = std::vector<Light>;
using Indices = std::vector<Index>;
Positions vertices;
Colors colors;
- Normals normals;
Lights lights;
Indices indices;
void Clear() {
vertices.clear();
colors.clear();
- normals.clear();
lights.clear();
indices.clear();
}
void Reserve(size_t p, size_t i) {
vertices.reserve(p);
colors.reserve(p);
- normals.reserve(p);
lights.reserve(p);
indices.reserve(i);
}
enum Attribute {
ATTRIB_VERTEX,
ATTRIB_COLOR,
- ATTRIB_NORMAL,
ATTRIB_LIGHT,
ATTRIB_INDEX,
ATTRIB_COUNT,