Editing Operations
Selecting, duplicating, deleting, and reorganising objects are the day-to-day of building a scene. This page covers those operations, how they combine into multi-selections, and the undo/redo system that backs every one of them.
Selection
You select objects two ways, and they stay in sync:
- In the Viewport - click an object to pick it. The gizmo appears on the selected object.
- In the Hierarchy - click a row.
Selection has a primary object (the most recently clicked, shown in the Inspector) and a selection set of everything currently selected. Selecting a single object replaces the whole set with it.
Multi-select
- Cmd/Ctrl-click toggles an object in or out of the selection; the last one clicked becomes primary.
- Range / keyboard selection replaces the set with a group at once.
Multi-selection is what lets you delete, duplicate, enable, disable, or mark-static many objects in a single action. Only live objects can be selected - a stale handle (for example after a Play→Stop rebuild) is silently dropped.
📸 Screenshot - save as img/world-multi-select.png
The Hierarchy with three rows highlighted as a multi-selection and the Inspector showing the shared/primary object.
Core operations
| Operation | Effect |
|---|---|
| Duplicate | Copies the selected subtree(s) in place, offset slightly so the copy is visible, and selects the copy. |
| Delete | Removes the selected object(s) and all descendants. |
| Enable / Disable | Toggles the GameObject active flag; a disabled object (and its subtree) stops rendering and simulating. |
| Mark Static / Non-static | Toggles the Static flag for batching + a fixed physics body. |
| Isolate | Enables the selected object plus its ancestors and descendants, and disables everything else - for focusing on one area. Undo restores the previous enabled state of every object. |
| Rename | Changes an object's name. |
| Reparent / Reorder | Drag in the Hierarchy to change parent or sibling order (cycle-guarded - see Transforms). |
Copy & paste
There are two independent clipboards:
- Object clipboard - Copy serializes the selected subtree; Paste re-instantiates it into the world (offset and selected). Because it round-trips through the scene format, references inside the subtree are remapped correctly.
- Component clipboard - from a component's header in the Inspector, Copy captures that single component and its values; Paste onto another object adds the component (or overwrites an existing one of the same type). Handy for copying a tuned Light or RigidBody between objects.
Undo & redo: the command stack
Every edit above is a Command - a { do, undo } pair - pushed onto an undo stack when it runs. This is what makes the editor forgiving: any action can be reversed, and reversed actions can be replayed.
Details worth knowing:
- Running a new edit clears the redo stack - you can't redo past a fresh change.
- Some edits are grouped: an action that internally runs many commands (a batch operation) collapses into a single undo entry.
- Physics edits are special-cased: changing a Collider or RigidBody while playing triggers a soft sim-restart so the change takes effect from the play-start state.
- The undo history is cleared when the world is replaced wholesale - opening a scene, loading a project, or starting a new scene.
📸 Screenshot - save as img/world-undo-toolbar.png
The toolbar Undo/Redo buttons, one enabled and one greyed out, after a delete operation.
Editing during Play
You can edit the scene while the game is running in Play mode - tweak a value, add an object, delete one - to iterate live. Awaken3D tracks whether you made any change during the session.
When you press Stop, if you made changes you get a keep-or-discard prompt:
You made changes during Play. Keep them? (The scene resets to its start state - your edits stay, the play-time motion is undone.)
- Keep - your authored edits (added/deleted/reparented objects, component tweaks) are preserved, but the runtime state (physics poses, animation time, script-driven motion) resets to the deterministic play-start. So the next Play always begins from a clean, repeatable state.
- Discard - everything from the session is thrown away and the scene reverts to its pre-play snapshot.
It's all-or-nothing - you keep the whole set of edits or none. If you made no changes, Stop just returns to edit mode with no prompt.
See also
- Hierarchy panel - selection, drag-reparent, and the right-click menu.
- Inspector - component copy/paste and per-field editing.
- Keyboard shortcuts - the keys for select, duplicate, delete, undo.
- Transforms & Hierarchy - cycle rejection on reparent/reorder.
- Preview & Play - the Play session the keep/discard prompt belongs to.