Skip to content

Controls

Yahasi edited this page Jul 6, 2026 · 3 revisions

🌐 English · Русский

← Getting Started · Cameras & HUD →

Controls

Keys are grouped by mode. The camera (flight) controls work at all times; the editor controls only apply while the editor is open (Tab or `); chat captures all typing while open (T).

HUD modes at a glance

The HUD has three modes — see Cameras & HUD for the full layout description:

  • PLAY — minimal: a crosshair + chat hint over full-screen 3D.
  • OVERLAY-EDIT (Tab) — the editor panels overlaid on full-screen 3D.
  • DOCKED-EDIT (`) — a Unity/Blender-style layout: the 3D in a centre viewport with a Toolbar on top, a Status bar on the bottom, a navigable Hierarchy on the left, and a grouped Inspector on the right.

The editing controls are identical in both edit modes; only the presentation differs. Flight controls still work while editing. The layout reflows when you resize / zoom the terminal.

Camera / flight (always active)

Key Action
W / S Move forward / backward (relative to where you look)
A / D Strafe left / right
Space / C Fly up / down (fly mode) — in a gravity world, Space jumps and C is unused
F1 Toggle flywalk. In a gravity world the default is walk (gravity pulls you down, you stand on the floor/objects, can't pass through them); fly mode restores free up/down flight and passes through objects
F7 Cycle the body view 1st-person → 3rd-person → 2nd-person (see Cameras & HUD)
F8 Cycle the active view through your body view and every placed camera object
F9 Toggle split-screen: SINGLE (full screen) ↔ a 2-way LEFT | RIGHT split
← / → Look left / right (yaw)
↑ / ↓ Look up / down (pitch)
Q / E Roll camera left / right
R Reset roll to level
Z / X Zoom in / out (FOV narrower / wider, 20°–120°)
V Reset FOV to default
= / - Increase / decrease your camera light power
P Cycle render detail 1 → 2 → 3 → 4 → 1 (lower = faster)
T Open chat (online) — a contained box; PgUp/PgDn or ↑/↓ scroll history; Enter sends, Esc closes
Esc Quit the app (while chatting, Esc closes the chat instead)

Gravity is a per-world setting (enabled in the Create world dialog). With gravity off, the camera always free-flies. With gravity on, you start as a walking character — press F1 any time to switch to free-fly for building/inspecting.

Editor (press Tab for overlay, or ` for docked)

Key Action
Tab Toggle the overlay editor (Play ↔ Overlay-Edit)
` Toggle the docked editor (Play ↔ Docked-Edit)
G Cycle the spawn type (cube / sphere / cylinder / cone / pyramid / ramp / flatpicture / light / camera / any models/ mesh)
B Spawn the current type in front of the camera (authority only)
F Aim-select: pick the object under the crosshair
[ / ] Select previous / next object (in the docked Hierarchy, moves the selection and scrolls to keep it visible)
, / . Move the field cursor up / down in the properties panel / Inspector
N / M Decrease / increase the value of the highlighted field (authority only)
Enter Type an exact value into the highlighted field — the Name (text) or any numeric field (parsed + clamped on Enter; Esc cancels). In the docked Inspector, Enter on a section header collapses/expands it. Enum/toggle fields aren't typed — use N/M (authority only)
I / K Move the selected object along +Z / −Z (authority only)
J / L Move the selected object along −X / +X (authority only)
U / O Move the selected object up / down (+Y / −Y) (authority only)
Delete Delete the selected object (authority only)
F2 Toggle shadows on/off (authority only, live-synced)
F3 Toggle the BVH acceleration on/off (authority only, live-synced)
F4 Toggle the camera headlight on/off (authority only, live-synced)
F6 Toggle the floor platform on/off (authority only, live-synced)
F5 Save the world back to worlds/<name>.json (authority only)

In an online session, only the authority (the server, or a local solo session) can spawn/move/edit/delete/save. A connected client can open the editor to select and inspect objects, but its changes never affect the shared world.

Chat (press T to open, online only)

Key Action
type Enter your message
Enter Send
Backspace Delete a character
PgUp / PgDn or ↑ / ↓ Scroll the history
Esc Cancel without sending

The properties panel / Inspector

Use , / . to move the field cursor and N / M to step the highlighted field. For a faster, exact change, press Enter to type a value into the highlighted field: the Name (text) or any numeric field (Pos/Rot/Scale/Spin, R/G/B/A, Pale, Mass, Bounce, Friction, RollFric, TexScale, Radius, Power, and the light fields). The typed value is parsed and clamped to the field's valid range on Enter; Esc cancels; an empty or invalid entry is ignored. Enum/toggle fields (Collide, Gravity, Collider, Texture, TexFace, TexFilter, Kind, Shape) are not typed — cycle them with N/M.

The editable fields depend on the selected object's type:

  • Mesh / cube / cylinder / cone / pyramid / ramp — Pos X/Y/Z, Rot X/Y/Z, Scale, Spin, R/G/B/A, Pale, Texture, TexScale, TexFace, TexFilter, Collide, Gravity, Collider, Mass, Bounce, Friction, RollFric.
  • Flat picture — Pos X/Y/Z, Rot X/Y/Z, Scale, R/G/B/A, Pale, Texture, TexScale, TexFace, TexFilter — a visual panel (no physics fields; non-colliding).
  • Sphere — Pos X/Y/Z, Radius, R/G/B/A, Pale, Texture, TexScale, TexFace, TexFilter, Collide, Gravity, Mass, Bounce, Friction, RollFric.
  • Camera — Pos X/Y/Z, Rot X/Y/Z, Kind (Fixed / Follow), Target (the object id a Follow camera tracks), Name. A camera's rotation follows the view convention: Rot X = roll (spins the image), Rot Y = yaw, Rot Z = pitch — use Y/Z to aim it.
  • Platform — Pos X/Y/Z, Shape/Size (or Width × Depth), R/G/B/A, Pale, Collide, Gravity.
  • Light — Pos X/Y/Z, Power, Influence, R/G/B/A, Pale, Kind, then per kind, then Gravity:
    • Point: nothing extra.
    • Directional: Dir X/Y/Z, Spin.
    • Spot: Dir X/Y/Z, Cone (half-angle), Beams (1–8 fanned cones), Shape (Circle / Square / Triangle), Spin.
    • Area: Dir X/Y/Z, Size (half-extent), Spin.

Color is edited as four R / G / B / A channels (0–255 each): full 24-bit color plus an A (alpha) channel that is the object transparency. A separate Pale value (0–1) is the color transparency — it washes the surface's own color toward white without affecting see-through or shadow. Collide / Gravity are on/off toggles; they read Off (locked) and can't be enabled when the world's Collision / Gravity switch is off. See Physics for Collider, Mass, Bounce, Friction, RollFric, and Textures for Texture, TexScale, TexFace, TexFilter.

Clone this wiki locally