Hikari is my personal Game Engine that I'm writing in my free time.
To write a easy to use, modular and performant Game Engine in Rust, and also learn more about writing Game Engines in the process.
- Physically Based Rendering
- Image Based Lighting
- Sample Distribution Shadow Mapping
- Multithreaded Asset Loader
- Shader Hot Reloading
- Powerful Render Graph API powered by Vulkan
- Compute Shader support
- ECS Architecture
- WYSIWYG Editor for loading and editing Scenes (imgui)
- Editor and QoL Improvements
- Add scripting functionality (Lua)
- Animation System
- Bindless Render Resources
- Global Illumination (DDGI)
To build Hikari, you'll need to have Rust installed, along with the VulkanSDK.
To build everything in the workspace, run:
cargo build --all
Hikari is divided into a number of smaller crates found inside inside the crates
folder. All of the functionality in these crates is reexported by the main hikari
crate.
There are also two additional crates hikari_editor
and hikari_cli
.
You can run the editor from the project root:
cargo run -p hikari_editor
Note: By default the debug builds are compiled with optimizations
Here is a list of projects that I'd like to thank which have heavily inspired the development of Hikari: