Blaze4D is a Fabric mod that changes Minecraft's rendering engine to use the Vulkan Graphics Library, it is currently in Early Development and is NOT intended for use by the faint-hearted. Support for Blaze4D can be found in the #support Discord channel.
We have a Discord server where you can track development progress, ask questions, or just hang out in.
- Vulkan SDK - Version 1.3.208 or newer
- CMake and a C++ compiler - Required for building some of our dependencies
- Rust - Version 1.62.0 or newer
- Java 18
To build the project with natives for your platform run
./gradlew build
in the project root directory.
To run the game with the mod use any of the 3 run targets:
./gradlew runClient
./gradlew runClientWithValidation
- Enables validation layers./gradlew runClientWithValidationRenderdoc
- Enables validation layers and automatically loads the renderdoc shared library.
To work on and test natives it can be useful to run cargo manually. To do this it's necessary to first build the assets by running
./gradlew :core:assets:build
This only needs to be repeated if the assets are modified.
After that the natives can be manually built using cargo.
- Clone the repository (https://github.com/Blaze4D-MC/Blaze4D.git).
- Edit
- Pull Request
The project is organized in 2 parts
This is the core of Blaze4D that performs the actual rendering and is written in Rust. The gradle project contains 3 subprojects.
- assets - These are any assets we need to bundle with Blaze4D. For example shaders or fonts. They currently need to be separately built after a change using their gradle
build
task. - natives - The main Blaze4D core rust code.
- api - A java api of the rust code used by the mod.
This is the fabric mod itself. Its job is to interface with minecraft. Most of the heavy lifting should take place in Blaze4D core.