Hexahedra is a C++ framework for blocky/voxel games. The most notable features are:
- Multiplayer
- "Infinite" terrain (4 billion blocks in all directions)
- Lua scripting on the server
- Runtime selection of OpenGL 2.1 and 3.3 renderers
- Very flexible DSL for terrain generation, compiles to OpenCL if available
- Centralized player authentication (optional)
- Server list
It's pretty much pre-alpha. There are some cool features you can check out, but it's definitely not ready for making actual games yet. You can follow its development on the forum, or see it in action on Youtube.
This library depends on the following projects:
- The Simple and Fast Multimedia Library, for I/O abstraction and OpenGL initialization.
- Scripting is done through LuaJIT and LuaBind.
- The save files are stored using LevelDB.
- Uses the IQM format for storing 3D models and animations.
- The network layer is provided by ENet.
- The Play font is provided as the default.
- The GUI uses Rhea as its layout constraint solver.
- HexaNoise (the DSL used for terrain generation) is now available as a separate MIT-licensed library.
This project uses Travis CI to build and run the unit tests on different compilers automatically.