Blocks
Blocks copied to clipboard
A block (voxel) engine for jMonkeyEngine
Blocks
Blocks is a voxel engine created for jMonkeyEngine.
Features
Multiple shapes
Next to the default cube shape, Blocks also supports more complicated shapes like pyramids, rounded blocks, wedges, slabs, stairs, ... This will make your creations feel even more vibrant!
Theming and PBR support
Don't like the look and feel of the blocks? You can easily change the default textures by creating and using a different theme. You can even supply your own custom jMonkeyEngine material files. Even physically based rendering (or PBR) of blocks is supported by default.
Endless terrain
Blocks comes with a fully fledged pager implementation that will load the blocks around the player, blocks that are out of sight will be unloaded to save resources.
Physics support
Add the generated collision meshes to the physics space of your application to create and simulate solid environments. Blocks uses the Minie physics library for real-time physics simulation.
Optimized for performance
Using multithreading, high demanding tasks like chunk generation and mesh creation can be run in parallel to maximize the CPU time.
Designed for customization
Blocks is build with modularity and reuse in mind. If a part of the framework doesn't match your requirements you can easily swap it out and replace it with something else.
Built using jMonkeyEngine best practices
The lifecycle of the Blocks framework is managed by AppState objects. This way the Blocks framework can easily and safely be plugged into the StateManager of jMonkeyEngine.
Documentation
General documentation can be found on the wiki. The javadoc of the latest stable version can be found at the gh-pages. Documentation can only take you so far, so make sure to take a look at the different examples.
Getting help
Make sure to check out the FAQ page on the wiki. There is also a Blocks topic on the jMonkeyEngine forum. Or just create your own topic.
Contributing
If you have a bug or an idea, you can create a ticket for it here. See the CONTRIBUTING file for more details.
License
This project is licensed under the BSD 3-Clause License - see the LICENSE file for details