Implementation of marching cubes algorithm in C++ .
- Vertex coordinates and face normals generated on the GPU using a compute shader.
- Simplex noise at each point used as density function.
- For smooth (Gouraud) shading, vertices are indexed and the vertex normals are calculated on the CPU.
- Clone the repository including the submodules using :
git clone --recurse-submodules https://github.com/The-curs0r/marching-cubes.git
- Go into the cloned repository and run CMake :
cd marching-cubes
cmake CMakeLists.txt -B ./build/ -G "Visual Studio 16 2019"
cd build
start marchingCubes.sln
- Build the solution for Release configuration
- Copy the shader files to the Release folder and run the application :
copy *.glsl ./Release/
cd Release
start .\marchingCubes.exe
- Clone the repository including the submodules using :
git clone --recurse-submodules https://github.com/The-curs0r/marching-cubes.git
- Go into the cloned repository and run CMake :
cd marching-cubes
cmake CMakeLists.txt -B ./build/ -G "Unix Makefiles"
cd build
make all
./marchingCubes
If you find a bug, or are unable to build the project or run the application, let me know through an issue here.
If you have any ideas or suggestions for this project, please put them here.