Skip to content
hikari
RenderingEditorAIToolchainDocumentation
GitHub
hikari

© 2026 Flying Rat Studio.
All rights reserved.

Explore the engineDocumentationContributorsLicenseBack to top
Documentation / Tutorials
Browse docs
Overview
Tutorials16
OverviewFirst game projectFirst entityAuthored user_data and the inspectorFirst mesh and materialFirst physics body and triggerFirst character controllerFirst session servicesFirst UIFirst input actionFirst messagesPlay, Edit, and scenesFirst runtime spawnFirst motionFirst skeletal animationAssets in Play (soft refs and hot reload)Dynamic editor recompile
Guides16
OverviewDevelopment guideGameplay APIChoosing component storageBuild and packagingProject filePluginsHikari Plugin APIData-driven content, JSON, and pathsScripting with KawaShader authoringTime of dayUser interfaceUI layoutUI widgetsMigration from Unity / UnrealActor and component lifecycle
Systems28
OverviewArchitectureApplication lifecycleFrontends and driversPlatforms and supportSession services and cross-scene stateScenes and gameplayActor communication (hi.actors)Game-facing refsSave / replication wire versionCoordinate space and camera conventionsRenderingRenderer architecture mapFrame governorGPU particlesVisual ZonesVolumetric mediaInputAudioPhysicsMotion KitTemporal KitAssets and ShinraPrefabsAsset residencyAsset formats (Shinra pipeline)UI and editorEditor asset hot reloadEditor Project Selector
Language reference2
OverviewAkari language referenceKawa language reference
Engine overview
Start exploring
  • No matching sections. Try fewer words or another topic.
NavigateEnter Openesc Close
Overview
Tutorials16
OverviewFirst game projectFirst entityAuthored user_data and the inspectorFirst mesh and materialFirst physics body and triggerFirst character controllerFirst session servicesFirst UIFirst input actionFirst messagesPlay, Edit, and scenesFirst runtime spawnFirst motionFirst skeletal animationAssets in Play (soft refs and hot reload)Dynamic editor recompile
Guides16
OverviewDevelopment guideGameplay APIChoosing component storageBuild and packagingProject filePluginsHikari Plugin APIData-driven content, JSON, and pathsScripting with KawaShader authoringTime of dayUser interfaceUI layoutUI widgetsMigration from Unity / UnrealActor and component lifecycle
Systems28
OverviewArchitectureApplication lifecycleFrontends and driversPlatforms and supportSession services and cross-scene stateScenes and gameplayActor communication (hi.actors)Game-facing refsSave / replication wire versionCoordinate space and camera conventionsRenderingRenderer architecture mapFrame governorGPU particlesVisual ZonesVolumetric mediaInputAudioPhysicsMotion KitTemporal KitAssets and ShinraPrefabsAsset residencyAsset formats (Shinra pipeline)UI and editorEditor asset hot reloadEditor Project Selector
Language reference2
OverviewAkari language referenceKawa language reference
Engine overview
Tutorials2 min read

Tutorials

On this page
On this pagePrerequisitesLearning pathCoreNextWhere tutorials stop Back to top

Hands-on onboarding for game packages. Sample project: src/games/example/. Deep behaviour lives in systems/; authoring how-to in guides/.

Prerequisites

  • Build and run the sample (editor or game): see Build and packaging.
  • Prefer bin/kaji/kaji editor --workspace=<repo> --project=src/games/example … so Play/Edit and scene authoring are available.
  • Game code imports @import("hikari_game") only (Architecture).

Learning path

Core

#TutorialYou will
1First projectLay out a game package and ProjectConfig
2First entityAuthor Zig, Kawa, and mixed actors; place them in a scene
3First user_dataInspector properties, transient fields, onChanged
4First mesh and materialasset:// / AssetRef render binds and soft placeholders
4bGame-facing refsAssetRef / ContentRef / PrefabRef / ActorRef + sample scenes/refs_demo.json
5First physicsDynamic bodies, triggers, onCollision
6First character controllerCapsule CCT, desired velocity, grounded
7First session servicesCross-scene state and HUD (not a “global entity”)
8First UIImmediate UI from a scene entity or the session
9First input actionBind a key and read it from Zig or Kawa
10First messageshi.actors / Actors.* — send / emit between Zig and Kawa
11Play, Edit, and scenesMode rules, replace/additive load, Stop restores the document

Next

#TutorialYou will
12First runtime spawnhi.world().spawn / SpawnDesc, Global hierarchy group
12bData, JSON, and moddingLoose resources/ table → spawn cubes (sample scene scenes/runtime_spawn_showcase)
13First motionTween / motion.wave on entity or HUD state
13bFirst skeletal animationSkinned glTF cook → ComponentAnimation → clip or animation graph
14Assets in PlaySoft refs and deferred hot reload during Play
15Dynamic editor recompileWhen Recompile is enough vs full editor rebuild

Where tutorials stop

Tutorials stay narrow: one seam, one working path. For contracts and edge cases, follow the “See also” links on each page (scenes, session services, UI authoring, messaging, scripting, assets).

PreviousEngine documentationNext Tutorial: first game project

Documentation follows the current engine checkout.

Snapshot cc148c75Source docs/tutorials/README.md
On this pagePrerequisitesLearning pathCoreNextWhere tutorials stop Back to top