1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
#include "cuboid.h"
#include "modelFactoryMesh.h"
Cuboid::CreatedFaces
Cuboid::createMesh(ModelFactoryMesh & mesh, const Mutation::Matrix & mutation) const
{
static constexpr std::array<glm::vec3, 8> VERTICES {{
// bottom
{n, n, z},
{n, y, z},
{y, y, z},
{y, n, z},
// top
{y, n, o},
{y, y, o},
{n, y, o},
{n, n, o},
}};
const auto vhs = addMutatedToMesh(mesh, VERTICES, mutation);
return {
mesh.add_namedFace("top", {vhs[4], vhs[5], vhs[6], vhs[7]}),
mesh.add_namedFace("bottom", {vhs[0], vhs[1], vhs[2], vhs[3]}),
mesh.add_namedFace("left", {vhs[0], vhs[7], vhs[6], vhs[1]}),
mesh.add_namedFace("right", {vhs[2], vhs[5], vhs[4], vhs[3]}),
mesh.add_namedFace("front", {vhs[0], vhs[3], vhs[4], vhs[7]}),
mesh.add_namedFace("back", {vhs[2], vhs[1], vhs[6], vhs[5]}),
};
}
|