An expanded version of my unreleased voxel game/engine. This code was thrown together, so I'm not very proud of it (e.g. world serialisation via SQL is a horrible way of doing things).
You use linux, your smart. Figure it out.
# Make sure you have XCode (bleh) dev tools installed. If your not sure, or don't have them, run:
sudo xcode-select --install
# Make sure you have brew installed. If not:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
# Then get cmake, make, git, etc....
brew install cmake make git glm glfw sqlite
# Then clone
cd ~/Downloads
git clone https://github.com/IsaccBarker/VoxCraft.git
cd VoxCraft
mkdir build
cd build
cmake ..
make
cd ../
# Then run to run the app
./build/VoxCraft
- GLEW - For modern OpenGL methods
- GLFW - Window creation and management
- GLM - Maths calculations
- stb_image - Image loading
- FastNoiseSIMD - Terrain generation
- ImGui - UI rendering
- libconfig++ - Save game settings
- https://www.seedofandromeda.com/blogs/29-fast-flood-fill-lighting-in-a-blocky-voxel-game-pt-1 - Lighting
- https://0fps.net/2012/07/07/meshing-minecraft-part-2/ - Greedy meshing
- https://0fps.net/2013/07/03/ambient-occlusion-for-minecraft-like-worlds/ - Ambient occlusion
- http://www.cse.yorku.ca/~amana/research/grid.pdf - Block selection
- http://www.minecrafttexturepacks.com/xenocontendi/ - Block texture