A voxel engine built using raylib-go and OpenGL
- Infinite Random World Generation: Utilizes a Perlin noise algorithm for creating expansive landscapes.
- Water Formations: Realistic water bodies.
- Surface Feature System: Precedurally generated trees with L-systems and randomly placed flowers and tall grass.
- Cache System: Efficiently stored surface features positions, providing better world consistency.
- Dynamic Lighting: Implemented basic lighting with shading and ambient occlusion for better depth perception.
- Fog Effects: Create atmospheric depth with fog.
- Block Interaction: Enable players to place and destroy blocks.
- Biome Diversity: Implement various biomes for a richer exploration experience.
- Cave Generation: Create intricate cave systems for players to discover.
- Web Build: Compile the project to WASM.
To get started with the voxel engine, clone the repository and open the folder. Make sure you have Go installed on your device. Then, run the command go mod tidy
and finally, to compile the project, run go run ./src
.
This project is licensed under the MIT License - see the LICENSE
file for details.
Inspired by CubeWorld and TanTan's Voxel engine built with the beavy engine. I would also like to acknowledge the use of voxelized vegetation assets from MangoVoxel in my voxel engine.