diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/cube.cpp | 6 | ||||
-rw-r--r-- | src/mesh.hpp | 11 | ||||
-rw-r--r-- | src/scene.cpp | 0 |
3 files changed, 17 insertions, 0 deletions
diff --git a/src/cube.cpp b/src/cube.cpp new file mode 100644 index 0000000..fddc601 --- /dev/null +++ b/src/cube.cpp @@ -0,0 +1,6 @@ +#include "cube.hpp" + +Cube::Cube() { + for (std::uint8_t i = 0; i < 8; ++i) + m_vertices.add({(i >> 2) & 1, (i >> 1) & 1, i & 1}); +} diff --git a/src/mesh.hpp b/src/mesh.hpp new file mode 100644 index 0000000..55b414a --- /dev/null +++ b/src/mesh.hpp @@ -0,0 +1,11 @@ +#include "mesh.hpp" +#include "scene.hpp" +#include <tuple> + +void Mesh::render(std::shared_ptr<Scene> scene_context) { + for (const TRIANGLE triangle : m_triangles) { + VECTOR v0 = m_vertices[std::get<0>(triangle.vertex_indices)]; + VECTOR v1 = m_vertices[std::get<1>(triangle.vertex_indices)]; + VECTOR v2 = m_vertices[std::get<2>(triangle.vertex_indices)]; + } +} diff --git a/src/scene.cpp b/src/scene.cpp new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/src/scene.cpp |