Hikari
ZigNative runtime, rendering, and editor.
A native Zig runtime supported by focused tools for assets, shaders, scripting, physics, and product builds. Each component has a clear responsibility.
Native runtime, rendering, and editor.
Asset cooking, watching, and packaging.
Shader language targeting Metal and Direct3D.
Embedded scripting for game logic.
3D physics and character controllers.
One build flow for games and the editor.
Kaji conducts the complete build: dependencies, asset cooking, shaders, native libraries, and the final executable. Editor and game products use the same declared build graph.
Source builds require a configured repository toolchain: Zig 0.16.0, .NET 10, Rust, and the platform’s native compiler and physics dependencies. The examples assume Kaji is already bootstrapped.
Run the shell examples from the repository root on macOS. The Editor command builds and launches the example project; Game build creates a release bundle. The Zig and Kawa tabs show small gameplay examples.
Compose an actor from the capabilities it needs.
const hi = @import("hikari_game");
pub const BeaconEntity = hi.defineEntity(.{
.archetype = "beacon",
.components = .{ hi.ComponentRender, hi.ComponentLight },
});Kaji owns product linking and data staging. Pick the product, linkage, and configuration; asset and shader settings remain explicit build inputs.
Omit --project to open the standalone project selector, or bind a project directly. Editor game modules are always dynamic.
A game build requires --project. Choose monolithic or dynamic linkage, then package the product and its data for distribution.
Apple Silicon with Metal 4 on macOS 26, and x86-64 Windows with Direct3D 12. Linux/Vulkan support is incomplete.