From 566b6ca0641d57fdff1b9abefb166db7d0cfcaa3 Mon Sep 17 00:00:00 2001 From: Warwick Date: Tue, 30 Aug 2022 15:05:45 +0100 Subject: [PATCH] Added a class with the purpose of creating the chunks base terrain. --- src/ChunkMCMeshBuilder.cpp | 18 ++++++++++++++++++ src/ChunkMCMeshBuilder.h | 18 ++++++++++++++++++ 2 files changed, 36 insertions(+) create mode 100644 src/ChunkMCMeshBuilder.cpp create mode 100644 src/ChunkMCMeshBuilder.h diff --git a/src/ChunkMCMeshBuilder.cpp b/src/ChunkMCMeshBuilder.cpp new file mode 100644 index 0000000..ae12fe4 --- /dev/null +++ b/src/ChunkMCMeshBuilder.cpp @@ -0,0 +1,18 @@ +#include "ChunkMCMeshBuilder.h" + +ChunkMCMeshBuilder::ChunkMCMeshBuilder() : chunkTerrain(nullptr) { + // Data to create the Mesh + std::vector vertices; + std::vector indices; + std::vector textures; + + // TODO: Build/load Mesh data here, it's better practice to place this in a + // function but fuck it. + + // Create the Mesh + this->chunkTerrain = new Mesh(vertices, indices, textures); +} + +ChunkMCMeshBuilder::~ChunkMCMeshBuilder() { delete this->chunkTerrain; } + +Mesh *ChunkMCMeshBuilder::getChunkMesh() { return chunkTerrain; } diff --git a/src/ChunkMCMeshBuilder.h b/src/ChunkMCMeshBuilder.h new file mode 100644 index 0000000..a86425a --- /dev/null +++ b/src/ChunkMCMeshBuilder.h @@ -0,0 +1,18 @@ +#pragma once +#include "Error.h" +#include "Mesh.h" + +// MC stands for Marching Cubes +class ChunkMCMeshBuilder { + +private: + Error error = Error("ChunkMCMeshBuilder"); + + Mesh *chunkTerrain; + +public: + ChunkMCMeshBuilder(); + ~ChunkMCMeshBuilder(); + + Mesh *getChunkMesh(); +};