Editor Guide
The Razorbill editor is a professional ImGui-based application with a dark theme, dockable panels, and full keyboard shortcuts.
Viewport
The 3D viewport renders your scene with orbit camera controls in edit mode:
- Left-click — Select entity (ray-cast picking)
- Right-click drag — Orbit camera
- Scroll — Zoom in/out
- Middle-click drag — Pan
In play mode, the viewport renders through the active scene camera.
Transform Gizmos
Manipulate entity transforms visually with three gizmo modes:
| Key | Mode | Description |
|---|---|---|
| W | Translate | Drag axis arrows to move entities |
| E | Rotate | Drag axis rings to rotate entities |
| R | Scale | Drag axis handles to scale entities |
Hold Ctrl while dragging for snapping (angle snap for rotation, grid snap for translation).
All gizmo operations produce SetProperty typed operations with full undo/redo support.
Panels
Hierarchy Panel
Tree view of all entities in the current scene. Shows parent-child relationships, camera indicators (cyan), and prefab instances.
Inspector Panel
Property editor for the selected entity. Shows all components with editable fields:
- Transform (position, rotation, scale)
- Material sliders (metallic, roughness, base color)
- Physics properties (mass, velocity, kinematic flag)
- Light settings (color, intensity, shadow resolution)
- Script properties (per-instance editable values)
AI Chat Panel
Multi-turn conversational AI assistant. Type natural language prompts to:
- Create and modify entities
- Write and attach scripts
- Set up lighting and materials
- Generate terrain and worlds
The chat panel shows inline operation badges with accept/reject controls, and auto-compiles scripts with visible retry on errors (max 3 attempts).
Timeline Panel
Full operation history showing every change made to the scene:
- AI badge — Changes made by the AI agent
- Manual badge — Changes made through the editor
- Click any timeline entry to revert to that point
Operation Queue
Staged changes waiting for review before committing:
- Individual accept/reject per operation
- Accept All to commit everything
- Each operation shows its structured diff
Save Workflow
Keyboard Shortcuts
| Shortcut | Action |
|---|---|
| Cmd+S | Save active scene |
| Cmd+Shift+S | Save all dirty scenes |
| Cmd+Z | Undo |
| Cmd+Shift+Z | Redo |
Dirty State Indicators
Unsaved changes are tracked via the undo stack:
- Window title shows asterisk (*) when scene has unsaved changes
- Scene menu shows dirty indicator
Close Protection
When closing the editor with unsaved changes, a dialog appears with three options:
- Save All — Save all dirty scenes, then close
- Discard — Discard all changes and close
- Cancel — Return to the editor
Auto-Save Recovery
Optional periodic auto-save (default: OFF, configurable via File menu):
- Saves to
.scene.recoveryfiles alongside scene files - On startup, detects recovery files and shows restore dialog
- Recovery files are cleaned up after manual save
Play Mode
Enter play mode to test your scene with scripts, physics, and animation:
- Click the Play button in the toolbar (or use the keyboard shortcut)
- The viewport switches to the active scene camera
- Scripts execute their
OnStart→OnUpdate→OnDestroylifecycle - Physics simulation runs with Jolt Physics
- Click Stop to return to edit mode
Play mode isolates state — stopping reverts all runtime changes.
Auto-Play
Launch the editor with auto-play for testing:
ENG_AUTO_PLAY=1 ./build/editor/eng_editor
Toolbar
The top toolbar provides quick access to:
- Tool modes — W (Translate), E (Rotate), R (Scale)
- Play controls — Play, Stop
- Global search — Search across entities, assets, and scripts
- Layout dropdown — Switch between panel layouts
Light Gizmos
Light entities show visual gizmos in the viewport:
- Directional lights — Direction arrow showing light direction
- Point lights — Sphere wireframe showing falloff radius
- Light gizmos are color-coded to match the light color
Camera Gizmos
Camera entities display:
- Frustum wireframe — FOV cone for perspective, box for orthographic
- Cyan hierarchy indicator — Camera entities highlighted in the hierarchy panel
- Preview mode — Toggle to render through the selected camera
Collider Gizmos
Collider entities show wireframe overlays:
- Color-coded by state (static, dynamic, trigger)
- Resizable via gizmo handles in the inspector
- Supports box, sphere, capsule, and cylinder shapes