|
| 1 | +# The Interface |
| 2 | + |
| 3 | +Since 1.30 every window, menu, dialog, the main HUD and the phone layout are built from one small kit of parts and |
| 4 | +one set of colours. This page is the map: where things are and what the shapes mean. Nothing you can *do* changed — |
| 5 | +every shortcut, setting, scrub field and panel works as before; only the look and a few placements moved. |
| 6 | + |
| 7 | +## One accent colour |
| 8 | + |
| 9 | +**Blue** marks what you can act on or have selected: the armed tool, a switch that is on, the chosen chip, a primary |
| 10 | +button, the focus ring. **Orange** is kept for things that are live — **Play**, recording, streaming — so it stands out |
| 11 | +where it matters. A **Shared** or **This device** badge beside a heading says who a setting affects, instead of a |
| 12 | +paragraph explaining it. |
| 13 | + |
| 14 | +The light theme and every custom `.theme.json` restyle all of it; see [Themes & Appearance](appearance.md). |
| 15 | + |
| 16 | +## The main HUD |
| 17 | + |
| 18 | +- **The toolbar** at the bottom is one glass bar: Move, Rotate, Scale, Interact, **Play** (the only orange button), then |
| 19 | + the windows you keep there (Objects, Node editor, Explorer, Animation…). The accent fill marks the armed tool or an open |
| 20 | + window. It is still yours to arrange — right-click any button; see [The toolbar](controls.md#the-toolbar). |
| 21 | +- **The logo** (top-left) opens the main menu, grouped as Project · Scene · Collaborate · App. |
| 22 | +- **The Connect bar** (top centre) shows your ID — click it to copy your invite link — the field to join someone, and |
| 23 | + the status as a badge. Once you are connected it **collapses to a chip**: a status dot, the session, the avatars of who |
| 24 | + is here and your mic. Click the chip to open the full bar again. While the link to the signaling server is down it |
| 25 | + says for how long ("Reconnecting · 2 min"); the attempt count is in **Connect ▸ Info**. See |
| 26 | + [Connection](connection.md#the-connect-panel). |
| 27 | +- **Top right**: scene notes, the notification bell (with a count) and the peers list sit in one group beside your |
| 28 | + picture, which opens your profile menu (**Customize character**, **Profile settings**). |
| 29 | +- **Toasts** are calm cards under the Connect bar, at most three at a time; more collect behind **+N more**. See |
| 30 | + [Toasts](notifications.md#toasts). |
| 31 | +- Someone who is **speaking** in voice chat gets a soft green ring on their avatar. |
| 32 | +- Buttons are 36–38 px with a mouse and grow to **44 px on a touch screen**. |
| 33 | + |
| 34 | +## The command palette (Ctrl+K) |
| 35 | + |
| 36 | +<kbd>Ctrl</kbd>+<kbd>K</kbd> opens one search box over everything: **tools** (Move, Scale, Interact…), **windows** |
| 37 | +(Explorer, Objects, the Profiler…), **menu items** and **every setting**. Type a few letters, move with |
| 38 | +<kbd>↑</kbd> <kbd>↓</kbd>, press <kbd>Enter</kbd> to run it; <kbd>Esc</kbd> or a click outside closes it. Picking a |
| 39 | +setting opens Settings already searching for that row. The palette is listed in the shortcut sheet (<kbd>?</kbd>) and |
| 40 | +can be rebound there like any shortcut. |
| 41 | + |
| 42 | +## Windows and tabs |
| 43 | + |
| 44 | +Every docked or floating window — Explorer, Objects, Chat, AI assistant, Notes, the Notification centre, the node |
| 45 | +editor, Flow code, Animation, UV, Shader, HUD editor, Profiler, the Code workspace — has the same header: icon, title, |
| 46 | +the window's own actions, then pin and close in the same places. Windows in one group, and the views in the bottom dock, |
| 47 | +share **one tab strip**: pill tabs with the view's icon and their own **✕** to close that view (it shows on the |
| 48 | +active tab and when you point at one); a docked view no longer repeats its name under its tab. More tabs than fit |
| 49 | +scroll sideways (the wheel or a swipe; the strip fades where more tabs are hidden) while **+** stays in place. |
| 50 | +Moving, docking, splitting and tabbing work exactly as before — see [Floating windows](controls.md#floating-windows). |
| 51 | + |
| 52 | +Lists scroll with a thin scrollbar that appears only while you scroll or point at them; there are no chunky native |
| 53 | +scrollbars anywhere. |
| 54 | + |
| 55 | +## Menus |
| 56 | + |
| 57 | +The right-click, Add (<kbd>Shift</kbd>+<kbd>A</kbd>) and viewport menus share one style: 32 px rows, an icon per row, |
| 58 | +shortcuts right-aligned, quiet section labels. |
| 59 | + |
| 60 | +**Right-click an object** and the everyday actions come first — **Properties**, **Rename**, **Duplicate**, **Delete** — |
| 61 | +then **Focus**, **Ping** and **Add note**, then the editing modes. Rarer work is one level down: **Transform ▸** |
| 62 | +(align to ground, origin, pivot…), **Mesh ▸** (convert, boolean…), **Physics & effects ▸** (joints, particles, flow |
| 63 | +effects), **Prefab ▸** on a placed prefab copy, and **Save as… ▸**. Every action and its shortcut is still there. |
| 64 | + |
| 65 | +## Dialogs |
| 66 | + |
| 67 | +Modules, Sessions, Checkpoints, Templates, Storage, Publish / Export, Import and every confirmation share one dialog |
| 68 | +style: a header with the title and close, tabs directly under it where a dialog has them, one scrolling body and the |
| 69 | +answers bottom-right. Each view has **one** emphasised action; a destructive answer is red. Escape, a click outside and |
| 70 | +the close button behave as before. **Customize character** is a drawer you can resize by its edge — see |
| 71 | +[Your Character](avatars.md#customize-character). |
| 72 | + |
| 73 | +## On a phone |
| 74 | + |
| 75 | +Below 640 px wide the app switches to a phone layout with less on screen and nothing missing: |
| 76 | + |
| 77 | +- **Top**: the logo (main menu) on the left, a **Connect chip** in the middle — tap it for your invite link, the join |
| 78 | + field, Info and Toasts — and the notification bell and your picture on the right. |
| 79 | +- **Bottom bar**: **Add · Objects · Play · Explorer · More**. Play stays the only orange control. **More** holds the |
| 80 | + rest: Chat, the AI assistant, Notes, the node editor and every other window, the viewport tools and stats. |
| 81 | +- **Make the bar yours**: **More ▸ Edit bar…**, or a long press on any tab, picks which views take the four slots |
| 82 | + (More always stays). The choice is kept on this device; **Reset** goes back to the default. |
| 83 | +- **The selection toolbar** appears only while something is selected: Move, Rotate, Scale, Inspect, Undo and Redo. |
| 84 | + With nothing selected — just looking around — there is no toolbar; **More ▸ Edit** has Undo, Redo, Select multiple |
| 85 | + and Interact mode. |
| 86 | +- **Sheets sit above the bottom bar.** Objects, Explorer and the other docked views, the Inspector, Notifications, Add |
| 87 | + and More open as bottom sheets with a handle — drag (or tap the handle) between peek, half and full height — and |
| 88 | + the bar with Play stays visible and tappable. The selection toolbar rides on top of whatever sheet is open, so you |
| 89 | + can pick an object in Objects and move or undo without closing it. Each sheet reopens at the height you left it, on |
| 90 | + this device. The menus you open by long-pressing the scene are short-lived action sheets that may cover the bar |
| 91 | + until you pick something or tap outside. |
| 92 | +- **Editors fit a phone**: the [Animation](animation.md#on-a-phone) window shows one pane at a time, the [Shader |
| 93 | + editor](shader-graph.md#on-a-phone) gives the canvas the whole screen with the palette and properties as sheets, |
| 94 | + and every toolbar that does not fit — UV editor tools, Profiler controls — scrolls sideways (with a fade where |
| 95 | + more is hidden); nothing is out of reach. |
| 96 | +- **Settings** is a list you tap into, with ‹ Back on every page; Settings and dialogs open full-screen and cover the |
| 97 | + logo while they are open. |
| 98 | + |
| 99 | +Touch targets are at least 44 px, switches 51 × 31, and text fields use 16 px text so the browser never zooms. |
| 100 | + |
| 101 | +## For module authors |
| 102 | + |
| 103 | +Every part shown here is on the **/kit** page of the app, in every state, and module panels can use the same parts — see |
| 104 | +[The UI kit](ui-kit.md). |
0 commit comments