7 constexpr array<glm::vec3, 6> quadToTriangles(const array<glm::vec3, 4> quads) {
18 constexpr array<glm::vec3, 36> cube() {
20 array<glm::vec3, 36> vertices;
22 const array<glm::vec3, 4> front = {
24 glm::vec3(-1, -1, -1),
29 for (auto v: quadToTriangles(front))
32 const array<glm::vec3, 4> back = {
38 for (auto v: quadToTriangles(back))
42 const array<glm::vec3, 4> top = {
48 for (auto v: quadToTriangles(top))
51 const array<glm::vec3, 4> bottom = {
54 glm::vec3(-1, -1, -1),
57 for (auto v: quadToTriangles(bottom))
60 const array<glm::vec3, 4> left = {
63 glm::vec3(-1, -1, -1),
66 for (auto v: quadToTriangles(left))
69 const array<glm::vec3, 4> right = {
75 for (auto v: quadToTriangles(right))