> For the complete documentation index, see [llms.txt](https://help.intangible.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://help.intangible.ai/build/working-with-objects.md).

# Working with objects

Click, swap, color, lock, frame, delete – the contextual menu that handles most per-object actions in Build mode.

Click any object in the viewport and the contextual menu opens above it. Most of what you'd do to a single object lives in that menu: swap its model, change its color, edit transforms, attach details, lock it, frame it, delete it.

## Watch

{% embed url="<https://www.youtube.com/watch?v=fvUcN8G6KrU>" %}

![A selected Lamborghini in Build with its contextual menu below it. From the left: Swap Model, a color swatch, Transform, the Parent tool, Details and the three-dot More options; then a divider, Gizmo Mode, the snapping toggle and its Snapping options chevron](https://1179478100-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSWrjIqlgVAblx6vHGJiM%2Fuploads%2Fgit-blob-a962eadf2f21edc48cf690f643dd93772cb5869b%2Fcontextual-menu-01.png?alt=media)

## What it does

In a typical 3D pipeline you'd dig through right-click menus or property inspectors to act on an object. Intangible collapses the most common per-object actions into one contextual toolbar that opens on click and closes on deselect. Reach for it first whenever the job doesn't need a full panel. If right-clicking is your habit, that works too – see [Right-click menu](#right-click-menu).

## How to use it

Click the object and the contextual menu appears. From left to right, it holds:

1. **Swap model.** Opens the [Swap Model](#swap-model) dialog scoped to similar assets (e.g. swapping a Lambo opens "Vehicles > Land Vehicles" with hierarchical category breadcrumbs).
2. **Color / material swatches.** A row of round swatches showing available color variants. Not all assets have swatches – most library assets ship in gray. Imported objects don't expose swatches.
3. **Transform.** Opens the Transform popover with numeric Position (X, Y, Z) and Rotation (X, Y, Z) fields. Use it when dragging the gizmo is too coarse. Opening it also switches the viewport handle to the classic gizmo with axis arrows.
4. **Parent tool.** Right after Transform. Sets a parent, or clears one when the selected object already has a parent. See [Parenting](#parenting) below.
5. **Details.** Opens the [Details panel](/build/object-details.md) on the left side of the workspace – Name, Description, Reference images.
6. **More options.** Three-dot menu with secondary actions. See [More options menu](#more-options-menu).
7. **Gizmo coordinate space.** Small toggle popover with **Global** and **Local** options – the same toggle the keyboard shortcut `T` triggers.
8. **Snapping.** The snapping toggle, plus a small chevron beside it for **Snapping options**. `B` toggles it from the keyboard. See [Snapping modes](#snapping-modes).

## Parenting

Parenting makes one object follow another. The child keeps its own offset from the parent; move the parent and the child rides along. Use it to attach a prop to a vehicle, a camera to a rig, or to group set dressing that should travel together.

![The Parent tool, right after Transform in the contextual menu, hovered so its Set Parent tooltip shows](https://1179478100-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSWrjIqlgVAblx6vHGJiM%2Fuploads%2Fgit-blob-6a58292007f3b98ac4aabebaf21250db7f737bcb%2Fparent-tool-01.jpg?alt=media)

![A box parented to the car, selected: the parented icon is highlighted in its contextual menu, with the Unparent tooltip](https://1179478100-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSWrjIqlgVAblx6vHGJiM%2Fuploads%2Fgit-blob-16adf738f4af099a23927ccea4e85c5985b793b8%2Fparent-tool-02.png?alt=media)

Parenting is an explicit mode, entered from the Parent tool in the contextual menu, right after Transform:

1. Select the object (or objects) that should be the child.
2. Click the Parent tool (tooltip **Set Parent**). The app waits for your next click, and the tooltip changes to **Click a target to set as parent (Esc to cancel)**. Clicks in parent mode don't change the selection. A hint at the bottom left of the viewport reads "Click an entity to set it as the parent of the current selection."
3. Click the object that should be the parent. The relationship applies and the mode exits.

To clear a parent, select the child. The Parent tool shows the parented icon, lit, with the tooltip **Unparent**. Click it to remove the parent, and the icon switches back straight away. You can clear a parent another way too: enter parent mode and click the floor or the backdrop, and the object returns to the floor.

![Selecting a box, clicking Set Parent on its contextual menu so the parent-mode hint appears at the bottom left, then clicking the character: the box's Parent tool lights up and a faint dashed link runs from the box to its new parent](https://1179478100-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSWrjIqlgVAblx6vHGJiM%2Fuploads%2Fgit-blob-9ef756d1bd12eb07d7b687324ea76a157c142c1c%2Fparent-tool-demo.gif?alt=media)

Candidates highlight as you hover in parent mode, so you can see what you are about to attach to before you commit. Hovering the floor highlights the ground, which is how you clear a parent rather than set one.

![Parent mode on, with the hint at the bottom left of the viewport reading "Click an entity to set it as the parent of the current selection."](https://1179478100-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSWrjIqlgVAblx6vHGJiM%2Fuploads%2Fgit-blob-5cd93b94f3f070792d77616a2ab31ddd9fa47977%2Fparent-tool-mode-01.png?alt=media)

Parent mode also exits on `Esc` or when you switch editor modes. You can't parent an object to itself or to one of its own children – the tool blocks cycles.

Parenting is independent of snapping: snapping an object to a surface doesn't parent it unless **Parent to snap target** is on, or you hold `Ctrl` + `⇧` while you drag – see below.

### Attaching to a character

Parenting a prop to a character used to attach it to the character's origin, which meant the prop moved with the figure but ignored the pose. A hat parented to a character did not follow the head.

Dropping an object onto a **rigged character** with snapping set to parent attaches it to the point on the skin you dropped it on, and it follows that point through posing and animation. Put the hat on the head and it stays on the head.

There are three ways to attach an object to a rigged character:

* Move the object onto the character with the smart gizmo, with surface snapping and **Parent to snap target** on
* Hold `Ctrl` and `⇧` while dragging
* Drag it straight onto the character from the asset library, which always snaps and parents

The dotted parent line ends at the attach point rather than at the character's centre, so you can see what it caught. Select the character and it draws a line to each object attached to its surface.

To move an attachment, snap it onto the same character somewhere else. To remove it, snap it onto something that is not the character, or double-click, or click the backdrop in the parent tool.

![A mug dragged across the floor with the Surface snap tag beside the cursor, landing in a character's hand and parented to it, ending with the character selected and the mug held](https://1179478100-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSWrjIqlgVAblx6vHGJiM%2Fuploads%2Fgit-blob-13c22d8dff0a5e0c57811cb08053adc79636ba71%2Fskin-attach-point-01.gif?alt=media)

## Shape a primitive

Primitives are the base shapes in the **Primitives** tab of the asset library: box, capsule, cone, cylinder, icosahedron, plane, sphere and torus. Each one has its own parameters.

1. Select one or more primitives of the same type.
2. Click the ruler icon in the contextual menu. Its tooltip reads **Parametric Settings**.
3. Drag or type a value. The shape updates as you go. Lengths are in metres and angles in degrees.

Press `Esc` during an edit to put every value back. Click **Reset parameters** to return to the default shape. With several primitives selected, a value that differs between them reads **Mixed**.

Use the angles to cut shapes: a sphere's **Vertical Sweep** at 90° gives a dome, and a cylinder's **Sweep Angle** at 180° gives a half-cylinder. The pivot stays where it was, so a cut shape doesn't move. In a populator, click the ruler icon on a primitive's row in **Populator Contents**. The values apply to every instance.

| Primitive   | Parameters                                                                                                  |
| ----------- | ----------------------------------------------------------------------------------------------------------- |
| Box         | Width, Height, Depth                                                                                        |
| Capsule     | Radius, Middle Height, Cap Segments, Radial Segments                                                        |
| Cone        | Radius, Height, Radial Segments, Open Ended, Start Angle, Sweep Angle                                       |
| Cylinder    | Radius Top, Radius Bottom, Height, Radial Segments, Open Ended, Start Angle, Sweep Angle                    |
| Icosahedron | Radius, Detail                                                                                              |
| Plane       | Width, Depth                                                                                                |
| Sphere      | Radius, Width Segments, Height Segments, Horizontal Start, Horizontal Sweep, Vertical Start, Vertical Sweep |
| Torus       | Radius, Tube Radius, Tube Segments, Ring Segments, Arc                                                      |

## Snapping modes

Snapping lands the object you drag on something: a surface, the nearest corner of a mesh, or a point on a world grid. Turn it on with the snapping toggle at the right end of the contextual menu, or press `B`. The chevron beside it, **Snapping options**, opens the panel where you pick the type and how it behaves.

![The Snapping type menu open in the snapping options panel, showing Surface with C (ticked), Vertex with V and Grid with X](https://1179478100-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSWrjIqlgVAblx6vHGJiM%2Fuploads%2Fgit-blob-6b437eb6c802a47fbf67a0e4aff0f0e6a82697fe%2Fsnapping-modes-02.jpg?alt=media)

| Type        | Key | What it does                                                                                                                                                                      |
| ----------- | --- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Surface** | `C` | Lands the object on the surface under the cursor. With the default **Bounds** space, the side facing the surface touches it: bottom on a floor, top on a ceiling, back on a wall. |
| **Vertex**  | `V` | Lands the object's origin on the nearest corner of the face under the cursor.                                                                                                     |
| **Grid**    | `X` | Lands the object's origin on a world grid. Set the spacing with **Grid size**, 1 m to start.                                                                                      |

Tap the key to pick the type, which also turns snapping on. Hold it while you drag to snap that way for one drag only. **Parent to snap target** in the same panel also parents the object to what it lands on, for Surface and Vertex.

Snapping stays the way you set it. It doesn't turn itself off when you change the selection, drop an asset from the library, or Alt-drag a copy. A library drop always snaps to a surface and parents, for that drop only, and leaves your settings alone.

The [Transform](/build/transform.md#snapping) page covers the snapping options panel, the Bounds and Origin spaces, and every snapping key.

The Parent tool has one exception: the contextual menu doesn't show it while a spline point is selected.

## Right-click menu

Right-click an object in the viewport and a menu opens at the cursor with the actions for it. Right-clicking works through the transform gizmo too, so a gizmo in the way doesn't block the object behind it.

**Right-clicking keeps your selection.** With nothing selected, the object you right-click becomes the selection. With something already selected, the selection stays as it is and the menu acts on it, wherever you clicked. Right-click one object in a group and you act on the whole group.

**An object outside the selection becomes the target.** Select a few objects, then right-click a different one. That object is outlined while the menu is open, and the menu adds actions that run from the selection to it:

* **Parent selection to this** makes the right-clicked object the parent of everything selected. It is left out when none of the selection can be parented to it, and while a spline point is selected.
* **Copy transform to selection** and **Copy color to selection**, at the top of the **Copy/Paste** submenu, copy the right-clicked object's transform or color onto the selection.

![The right-click menu on a Lamborghini: its name at the top, then Edit Details, Save as Set, Edit Populator Effect, Duplicate (⌘ + D), Duplicate In Place (⌘ + ⇧ + D), the Copy/Paste and More Options submenus, and Delete](https://1179478100-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSWrjIqlgVAblx6vHGJiM%2Fuploads%2Fgit-blob-0e19bf0fac350c08fef99aca82d0c9bc324abe0c%2Fright-click-menu-01.png?alt=media)

From the top, the menu carries:

* A header with the object's name and the same icon it has in the [Scene Outliner](/build/scene-outliner.md), or the count, such as **3 objects**, for a multi-selection.
* **Edit Details**, the same details window as the Scene Outliner's Edit Details.
* **Save as Set** and **Edit Populator Effect**, when the object offers them.
* **Duplicate** and **Duplicate In Place**, in Build.
* **Copy/Paste**, a submenu with **Copy selected** in Build, **Copy transform** and **Paste transform**, and **Copy color** and **Paste color** for objects that take a color.
* **More Options**, the rest of the [More options menu](#more-options-menu).
* **Delete**, in Build.

Right-click empty space or the floor in Build with nothing selected and you get a shorter menu: **Add an asset**, which opens the [asset library](/build/asset-library.md), and, under **Copy/Paste**, **Paste objects**, which pastes where you clicked, and **Paste In Place**, which pastes at the copied object's own position. With a selection, right-clicking empty space opens the selection's menu.

In Compose, right-clicking empty space with a shot active opens the menu for that shot's camera. With no shot active, it offers **Add a shot**.

## More options menu

The three-dot icon in the contextual menu opens secondary actions. The same items sit under **More Options** in the [right-click menu](#right-click-menu):

| Action                         | What it does                                                                                                                                                                                |
| ------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Save as Set                    | Group this object with the current selection into a reusable set. See [Sets](/build/sets.md).                                                                                               |
| Lock                           | Protect the object from viewport selection and transforms until unlocked. See [Locking objects](#locking-objects).                                                                          |
| Hide Object                    | Hide the object in the viewport. Same as pressing `H`.                                                                                                                                      |
| Group                          | Group the selection. Same as `⌘ + G`. See [Group objects](/build/selection-and-grouping.md#group-objects).                                                                                  |
| Edit Origin                    | Move the object's pivot without moving the object. Same as pressing `O`. See [Move the origin, not the object](/build/transform.md#move-the-origin-not-the-object).                         |
| Convert Selection to Populator | Turn the selected objects into one populator. See [Turn objects into a populator](/build/populators.md#turn-objects-into-a-populator).                                                      |
| Frame                          | Camera moves to fill the frame with the object. Same as pressing `F`.                                                                                                                       |
| Move Camera Inside             | Put the camera inside the object. Same as pressing `G`.                                                                                                                                     |
| Apply Physics                  | Drop the object once onto what is under it. See [Physics](#physics).                                                                                                                        |
| Promote to Canvas              | Show the model, or a selected group of models, as a card on the canvas. See [Put your own models on the canvas](/canvas/what-intangible-agents-build.md#put-your-own-models-on-the-canvas). |
| Edit Populator Effect          | Adjust how this object interacts with an active populator – masks, surface climbing, exclusion zones. See [Populators](/build/populators.md).                                               |
| Add LoRA                       | Attach a fine-tuned LoRA to this object. See [LoRAs](/build/loras.md).                                                                                                                      |
| Delete                         | Remove the object from the scene. Doesn't go to a recycle bin – be sure.                                                                                                                    |

![The More options menu open below a selected Lamborghini: Save as Set, Lock, Hide Object (H), Group (⌘ + G), Edit Origin (O), Convert Selection to Populator, Frame (F), Move Camera Inside (G), Apply Physics, Promote to Canvas, Edit Populator Effect, then Add LoRA and Delete](https://1179478100-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSWrjIqlgVAblx6vHGJiM%2Fuploads%2Fgit-blob-6d23678956893afccdea2c24437645c6ce674347%2Fmore-options-01.png?alt=media)

## Locking objects

The floor, the terrain, the building shell, the hero product once it's placed. A scene accumulates objects that are finished, and every stray click that grabs one instead of the thing behind it is a small tax on the rest of the session. Lock them.

You can lock an object two ways. Use the lock action on the object's row in the [Scene Outliner](/build/scene-outliner.md), or select the object and choose **Lock** from the **More options** menu in the properties bar. A lock icon marks the object once it's locked.

A locked object stops responding to the viewport. It won't highlight on hover, it won't select on click, and it can't be dragged, rotated, or scaled. Clicks pass through it to whatever sits behind, which is the point: locking the floor means you can marquee-select the props standing on it without dragging the floor along.

What stays available:

* **Selecting it in the Scene Outliner.** The lock covers the viewport, not the outliner. Select the row to reach the object's properties.
* **Editing its name and description.** Both feed the auto-prompt, so a locked object is still fully briefable. Locking a building shell doesn't stop you telling the visualizer what it's made of.
* **Snapping other objects onto it.** Surface snapping treats a locked object as a valid surface. Drop a chair onto a locked floor and it lands correctly, with the floor still protected.

Unlock from the same place you locked it.

{% hint style="info" %}
Lock the floor first. It's the object most likely to be grabbed by accident and the one you least often need to move, and locking it makes every subsequent selection in the scene more predictable.
{% endhint %}

## Swap Model

The Swap Model dialog opens scoped to the asset's category. The header carries a breadcrumb (e.g. **Vehicles > Land Vehicles**) plus a search bar and a grid of compatible thumbnails.

![Swap Model dialog open with the Vehicles > Land Vehicles breadcrumb, a search bar, and a thumbnail grid of compatible vehicles (truck, sports car, forklift, semi-truck)](https://1179478100-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSWrjIqlgVAblx6vHGJiM%2Fuploads%2Fgit-blob-ebd3978bbe398180b6528a2ac2866a974063ce81%2Fswap-model-01.png?alt=media)

Click a swap target and the new asset inherits position and rotation. The dialog opens scoped to the asset's category, but the search bar reaches across all categories, so you can swap a car for a tree if you search for it.

{% hint style="warning" %}
**Swapping a model doesn't clear its image reference.** If the original object had image reference attached, that reference stays on the new object after the swap. A car with Porsche image reference swapped to an ambulance will render as an ambulance that looks like a Porsche. Remove or replace the image reference after swapping if that's not what you want.
{% endhint %}

## Selecting multiple objects

The default click is single-selection. Marquee select is in the toolbar – click the marquee icon, then drag a box to select every object the box touches. The marquee button deactivates after each use; click it again for each new marquee selection. See [Selection and grouping](/build/selection-and-grouping.md) for group-level actions.

## Copying and duplicating

Twenty copies of the same crate is twenty placements. Duplicate the crate you already positioned instead of placing each one by hand.

`Ctrl D` / `⌘ D` duplicates the selected object. `Ctrl C` / `⌘ C` and `Ctrl V` / `⌘ V` copy and paste it. See [Keyboard shortcuts](/learn-more/reference/keyboard-shortcuts.md) for the rest of the Edit set. With an image on the clipboard rather than a copied object, the same paste attaches that image to the selection as a reference – see [Image reference](/learn-more/concepts/image-reference.md#4-paste-from-the-clipboard).

A pasted copy does not land on top of the original. It lands one unit away on the ground plane, at the same height, offset along the direction the camera is facing, so it appears beside what you copied rather than hidden inside it.

Paste again and the run keeps going. The second paste reuses the offset between the previous two, so repeated pastes march in a line with even spacing instead of stacking. Change the selection and the run starts over.

If the original is gone, or you have switched scene or project, or nothing is selected, there is nothing to offset from and the paste lands in the middle of the view instead, on the floor plane where you are looking.

### Duplicate or paste in place

Sometimes the copy has to sit exactly where the original is: a second light on the same spot, or a prop moved from one scene into another at the same coordinates.

* **Duplicate In Place**, `Ctrl ⇧ D` / `⌘ ⇧ D`, makes the copy at the selected object's exact position, rotation and scale.
* **Paste In Place**, `Ctrl ⇧ V` / `⌘ ⇧ V`, pastes a copied object with the transform it had when you copied it, whatever the camera is looking at. That holds across scenes too.

Duplicate In Place and Paste In Place are both in the right-click menu as well, and both work in Build. An ordinary paste after either one starts its offset run fresh.

### Alt-drag to duplicate

Hold `Alt` and drag the classic gizmo to duplicate the selected object as you drag, without leaving the viewport. On a Mac that is `Option`, the same key. The classic gizmo is the one with axis arrows, and it is not the default: objects open on Smart Transform, which is a different gizmo. `Tab` switches between them with a selection active. See [Transform](/build/transform.md).

**You drag the copy.** The moment the duplicate is made, selection transfers to it, so the original stays exactly where it was and the new one follows your cursor. Objects marked to prevent duplication are skipped: the drag just moves them.

To duplicate from a row rather than the viewport, right-click the object in the [Scene Outliner](/build/scene-outliner.md) and choose **Duplicate**. The copy inherits the original's parent and lands at a position offset.

Copy and paste reach past whole objects. Transforms, colors, prompts and keyframes can all be copied and pasted, so a value you set once gets reused instead of retyped. Input fields carry a copy control for the value they hold.

## Physics

Give an object the physics attribute and it stops being scenery. It falls, it collides, and it reacts when something pushes it.

1. **Select the object.**
2. **Open the object menu** (More options) and choose **Apply Physics**.
3. **Choose Apply Physics.**

**Apply Physics runs a one-time drop.** The object falls, collides with what is under it, and once it stops moving its resting position is saved as its new transform. The simulation then ends. Use it to place things: drop a crate onto uneven ground and it settles into the ground properly, so you don't nudge it by hand until it looks right.

While a drop is still running, the same menu offers **Stop Physics** in place of Apply Physics, which ends it where the object currently is.

**Apply Physics** takes no settings. Pick it and the drop runs.

Apply Physics is offered for **models, primitives and cameras**, characters included. Dropping a camera is allowed and occasionally useful. It is not offered for motion paths, waypoints or other gizmo-only objects, which have no real bounds and would fall as arbitrary boxes. Populators, extrudes and splats don't get it either, because they would give up their real collision shape for a crude box while simulating.

## Limits and known issues

{% hint style="warning" %}
**All assets are gray by default.** Library assets and imported models alike arrive without color or texture. Use color swatches if available on the specific asset, or attach [image reference](/learn-more/concepts/image-reference.md) to apply surface treatment at render time. Imported models are stripped of their source materials on import and don't preserve textures from the original file.
{% endhint %}

* **Delete is immediate.** No confirmation, no undo beyond `Cmd+Z`. If you delete something you wanted to keep, undo right away.
* **Swap stays inside the asset's category.** The Swap Model dialog opens scoped to the asset's category breadcrumb (e.g. Vehicles > Land Vehicles). Swapping across categories isn't a path the dialog offers.
* **Alt-drag is not in the shortcuts panel.** It works, on both platforms, but neither [Keyboard shortcuts](/learn-more/reference/keyboard-shortcuts.md) nor the in-app panel lists it, so it is easy to never discover.

## Related

* [Asset library](/build/asset-library.md)
* [Transform](/build/transform.md)
* [Object details](/build/object-details.md)
* [Selection and grouping](/build/selection-and-grouping.md)
* [Sets](/build/sets.md)
* [Scene Outliner](/build/scene-outliner.md)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://help.intangible.ai/build/working-with-objects.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
