This project is inspired from Sebastian Lague's marching squares and marching cubes videos, as well as Coding Train's Coding in the Cabana video on this topic. Feel free to add any contribution. An improved version using compute shaders is available here.
This C++ code uses GLFW3 and GLEW libraries for the 3D rendering. The noise functions come from FastNoise library by Auburn. This project was originally developed on CodeBlocks IDE using GNU GCC compiler.
- Drag the mouse to rotate around the generated shape;
spaceto generate a new random shape;Ato show/hide axes (red for x, yellow for y, blue for z);Bto show/hide wireframe box.
- Complete the
CellGrid::fillGrid()method to allow more advanced patterns (e.g. floored terrain, terracing); - Use compute shaders to generate the noise and the cubes/vertices;
- Add UI to configure the noise function
- Continuous terrain generator;
- Simulate flocking behaviour with boids around the generated terrain.