Skip to content
hikari
RenderingEditorAIToolchainDocumentation
Download

© 2026 Flying Rat Studio.
All rights reserved.

Explore the engineDocumentationContributorsDownloadLicenseBack to top
Documentation / Guides
Browse docs
Overview
Tutorials17
OverviewPlay, Edit, and scenesFirst UI documentFirst game projectFirst entityComponent properties and the inspectorFirst mesh and materialFirst physics body and triggerFirst character controllerFirst session servicesFirst UIFirst input actionFirst messagesFirst runtime spawnFirst motionFirst skeletal animationAssets in Play (soft refs and hot reload)Dynamic editor recompile
Guides25
OverviewWorking in the editorDevelopment guideGameplay APIActor and component lifecycleThreads, jobs, events, and routinesGameplay AI tasksGame AI: perception and movement playgroundBrain assetsBrain execution for swarm populationsLocalizationGame cursorsChoosing component storageBuild and packagingProject filePluginsHikari Plugin APIData-driven content, JSON, and pathsScripting with KawaShader authoringChoosing and scaling shadowsTime of dayUser interfaceUI layoutUI widgetsMigration from Unity / Unreal
Systems32
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 governorPipeline compilationSkeletal animationGPU particlesVisual ZonesVolumetric mediaInputAudioPhysicsMotion KitTemporal KitUI documentsAssets and ShinraPrefabsAsset residencyAsset formats (Shinra pipeline)Document schemasUI and editorEditor asset hot reloadEditor Project Selector
Language reference3
OverviewAkari GPU ABIAkari language referenceKawa language reference
Engine overview
Start exploring
  • No matching sections. Try fewer words or another topic.
NavigateEnter Openesc Close
Overview
Tutorials17
OverviewPlay, Edit, and scenesFirst UI documentFirst game projectFirst entityComponent properties and the inspectorFirst mesh and materialFirst physics body and triggerFirst character controllerFirst session servicesFirst UIFirst input actionFirst messagesFirst runtime spawnFirst motionFirst skeletal animationAssets in Play (soft refs and hot reload)Dynamic editor recompile
Guides25
OverviewWorking in the editorDevelopment guideGameplay APIActor and component lifecycleThreads, jobs, events, and routinesGameplay AI tasksGame AI: perception and movement playgroundBrain assetsBrain execution for swarm populationsLocalizationGame cursorsChoosing component storageBuild and packagingProject filePluginsHikari Plugin APIData-driven content, JSON, and pathsScripting with KawaShader authoringChoosing and scaling shadowsTime of dayUser interfaceUI layoutUI widgetsMigration from Unity / Unreal
Systems32
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 governorPipeline compilationSkeletal animationGPU particlesVisual ZonesVolumetric mediaInputAudioPhysicsMotion KitTemporal KitUI documentsAssets and ShinraPrefabsAsset residencyAsset formats (Shinra pipeline)Document schemasUI and editorEditor asset hot reloadEditor Project Selector
Language reference3
OverviewAkari GPU ABIAkari language referenceKawa language reference
Engine overview
Guides8 min read

Working in the editor

On this page
On this pageBefore you startFind your way aroundPlace and arrange contentImport and organize assetsTest without losing authored workChoose the right settingsWhen something looks wrongContinue by task Back to top

For artists, level designers, and other team members who work without writing code. This guide covers opening a prepared project, placing and editing content, testing it, and saving your work. You do not need to read the engine architecture or learn Zig to follow it.

Before you start

Ask your project maintainer for a compatible Hikari editor and a project folder containing hikari.project.json. Opening a project compiles its game module automatically, even if you only edit art. The editor therefore needs the matching engine SDK and Zig toolchain; a packaged editor can include both. If compilation fails, the splash opens the compiler output; share it (or the file Reveal Log shows) with the maintainer. Project setup and toolchain troubleshooting explains the requirements.

Hikari's supported editor platforms are Apple Silicon macOS and Windows. The current macOS product requires macOS 26 and a compatible Metal GPU. Linux support is incomplete. See Platforms for the development requirements.

Launch the editor, choose Open Project…, and select the project folder. If a version warning appears, check that you have your team's intended editor build before continuing. The editor may restart as it opens the project.

Find your way around

AreaWhat you use it for
ViewportSee the scene and manipulate selected objects
HierarchyFind and select actors: the objects placed in the scene
InspectorEdit the selected actor's transform and component properties
Asset BrowserFind, import, organize, and open project assets
ConsoleRead import, compilation, and runtime errors
ToolbarChoose transform tools; enter Play, Pause, or Stop

A scene is a saved arrangement of actors. An actor is an object with a transform and components. A component supplies a capability, such as rendering a model, emitting light, or playing sound. The project supplies available actor types and gameplay components; you can place and configure them without implementing them yourself.

Use File → Open Scene or open a scene from the Asset Browser. Select an actor in the Hierarchy, then choose Edit → Focus or press F while you are not typing. This brings the selection into view. The Hierarchy search matches actor names, IDs, and types; clear the search if an object seems to have disappeared.

Place and arrange content

  1. Open a scene in Edit mode.
  2. Use the Hierarchy's + menu to create an Empty, Light, Camera, or another available type. The Game section contains types supplied by your project.
  3. To place existing art, use the Place… entries and choose the asset. Use the Asset Browser to inspect a model or texture before placing it.
  4. Select the new actor. Edit Position, Rotation, and Scale in the Inspector, or use the viewport's transform tools.
  5. Give the actor a recognizable name. Save the scene with File → Save.

The world uses Y up. Cameras look along their local negative Z axis. For example, a camera at positive Z with zero rotation looks toward the origin. An imported model's scale and orientation depend on its source content; inspect it before duplicating it throughout a level.

ActionShortcut
Move / Rotate / ScaleW / E / R
Focus selectionF
Local / World transform spaceX
Toggle snappingShift+S
Duplicate selectionShift+D
RenameF2
Undo / RedoCmd/Ctrl+Z / Cmd/Ctrl+Shift+Z
Save sceneCmd/Ctrl+S
Command paletteCmd/Ctrl+P

These shortcuts apply when the editor owns keyboard focus, not while typing into a text field. Use the menus or toolbar if a shortcut is unavailable. Local uses the selected actor's axes; World uses the scene axes. Snapping helps align repeated pieces.

Import and organize assets

Use the Asset Browser's Import… action. Choose a source file, then its destination and name. Hikari's asset processor, Shinra, converts source art into the runtime format; this conversion is called cooking. Wait for it to finish before judging the preview.

Double-click an asset to open its detail window. Models have a 3D preview; skinned models also show clips and playback controls. Textures offer channel inspection and zoom. Materials, animation graphs, particles, and UI documents have their own authoring surfaces. A plain shader-authored material is a previewable asset; it is not automatically converted into a visual material graph.

Rename, move, duplicate, and delete assets through the Asset Browser. Its operations update recognized project references, and deletion reports affected documents and can offer a replacement. Moving files outside the editor does not perform that reference update.

Edit source files in the project. The .engine/ directory and packaged data/ folders contain generated files; changes there can be overwritten by cooking or building. Keep source art, scenes, and settings in your team's version-control workflow.

Test without losing authored work

Edit changes the scene document. Play runs a disposable copy to test gameplay, scripts, and physics. Stop returns to the retained Edit scene, including changes you had not yet saved to disk. Play-time movement and runtime spawns do not become saved scene edits.

  1. Save the scene before testing so your work is also safe on disk.
  2. Press Play and wait for Starting… to finish.
  3. Click the viewport when the game needs mouse capture. Escape releases capture.
  4. Use Pause to inspect a moment. Unpossess lets the editor camera look around independently of the game camera; it does not pause the simulation.
  5. Press Stop before making changes you want to keep.

The Play Inspector shows live values but is read-only. Asset changes are cooked in the background, but their application to the scene is deferred during Play. Stop to see a changed material, texture, or model applied in Edit.

For scene transitions and programmer controls, see Play, Edit, and scenes.

Choose the right settings

File → Project Settings edits project configuration. Read the apply-timing note next to a setting: some changes apply on Save, others require restarting the editor, launching a standalone game, or building a package. Rendering and Quality changes apply live on Save.

File → Editor Settings controls your editing environment, including theme, interface size, language, accessibility, and scrolling. These preferences are separate from the game's authored settings.

The Environment panel can preview a time of day for a scene using Atmosphere, or a scene with a compatible time-of-day component. Its preview clock is temporary; it does not save a new scene time. See Time of day.

When something looks wrong

SymptomFirst checks
Pink material or error cubeSelect the actor; read Asset issues and Console messages. Confirm the asset exists and cooking succeeded.
A source edit has not appearedStop Play, wait for the asset cook, and check the Console for errors.
An actor is absentClear Hierarchy filters; check actor Active and render Visible, then focus it.
Physics does not moveEnter Play. A static body is intentionally stationary; only change its type if the intended gameplay requires it.
The Inspector will not editStop Play or cancel a pending Play start, then select an authored actor.
An asset cannot be deletedRead the list of referencing documents; replace or remove those references through the editor.
The project cannot openShare the editor version and the compile splash output, build log or Console diagnostic with the maintainer.

Use Project Settings → Packs to control cooked-art placement. Add explicit asset stems or folders ending in / alongside include rules. Right-click an asset or folder in the Asset Browser and choose Assign to pack… to open that workflow directly. Select a pack, assign, and inspect Resolved contents before Save or Apply. Exact asset assignments override the most specific folder assignment; those override include rules. Use inherited rules removes the explicit assignment for that selection.

The preview resolves the unsaved draft through Shinra against the current cooked inventory. Each row explains its placement; Default pack shows fallback contents and Unmatched exposes assignments with no cooked match. Lists and preview results are paged without dropping members. Refresh preview picks up newly cooked assets. Card counts refer to the last cook; scene/prefab, shader and directory/content domains keep their role-based placement.

Use View → Asset References to inspect the selected asset’s cooked dependencies or switch off Cooked for authoring references. Follow Uses or Used by, expand the chain, and hover for pack placement, size, holds, and the field responsible for an edge. Deferred partition cells are visible without becoming base-scene load requirements. Use Scene Packs for the scene’s transitive storage closure.

The selection rail keeps asset identity, cooked size, pack delivery and current store holds visible. Its dependency summary counts unique direct/transitive dependencies, referring assets, missing targets and packs touched. Cooked size includes the selection and its unique dependency closure; it is not runtime memory. Include deferred cells expands that summary without changing the canvas. Missing targets make the size a known lower bound.

Use Missing, Cross-pack, Deferred and the pack selector to narrow the current graph neighbourhood. Filters combine, retain the selection and connecting paths, and never change the summary totals. Use Chain to search beyond direct neighbours. Amber edges cross known pack boundaries; red edges still identify missing targets. Clear filters restores the neighbourhood, and Reveal in Asset Browser locates the selection’s source.

Dependencies by cooked size ranks the complete closure, eight entries per page. Switch between largest and smallest first; unknown sizes stay last. Select a row or Shift-click a graph node to pin a Why is this needed? explanation without changing the graph focus. It shows one shortest directed chain with reference fields and deferred markers; referrers explain the reverse relationship. Focus asset navigates to the traced asset.

Copy path copies the displayed logical identity (including the cooked suffix in cooked mode). Export JSON… asks for a destination folder and writes a timestamped asset-dependencies-*.json report, then displays its path. It includes the selection, the full outgoing dependency closure, sizes, packs, missing targets, provenance and deferred edges according to Include deferred cells. Canvas filters, pagination and the 400-node display limit do not restrict the export. Unknown sizes are null; sizes describe cooked files, not runtime memory.

Continue by task

  • Build reusable scene objects: Prefabs.
  • Design a HUD without laying it out in code: First UI document, steps 1–3; hand slot names and button IDs to a programmer afterward.
  • Review or translate interface text: Localization window.
  • Tune lighting and atmosphere: Time of day, Visual Zones, and Volumetric media.
  • Inspect an animated model: First skeletal animation; ask a programmer to supply the actor and gameplay controls where needed.
PreviousGuidesNext Development guide

Documentation follows the current engine checkout.

Snapshot 86f12d68Source docs/guides/editor-workflow.md
On this pageBefore you startFind your way aroundPlace and arrange contentImport and organize assetsTest without losing authored workChoose the right settingsWhen something looks wrongContinue by task Back to top