# Populators

A populator is a procedural container that distributes assets across an area according to rules. Charles called it "Houdini for normal people" in the launch webinar. The idea is right: populators expose a small fraction of Houdini-style procedural distribution to creatives who don't have a TD on call.

## Watch

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

## Why it exists

Building a forest by hand means dragging two hundred trees, then nudging them so it doesn't look like an orchard. AI Composer takes the prompt "create a tropical forest" and produces a populator – an area with rules about what kinds of plants live in it, how dense they are, how they're distributed. You adjust the rules; the populator regenerates.

Populators show up everywhere in the product: AI Composer outputs them by default, the Build-mode asset library has populator-style content for crowds and traffic, and you can build your own from selected objects.

## What a populator looks like in the product

In the viewport, a populator has a footprint outline (a rectangle, polygon, or curve) that defines its area. Inside the footprint, individual procedural instances of assets get distributed.

![Populator Contents panel with Targets (Ignore masks / Ignore surfaces), a Density slider, and a list of Asset rows with per-asset size / distribution / count controls](/files/AbnOC58ENx3WHFnEZjAV)

Click the populator's footprint to select it. The contextual menu opens a populator-content panel (different from the per-object contextual menu) with:

* **Footprint shape** – rectangle, polygon, curve. Drag the corners to resize.
* **Asset list** – every asset type the populator distributes, with a density slider per asset. Add new asset types by dragging into the list; delete by clicking the trash icon.
* **Density** – overall scaling for instance count.
* **Layout** – grid, scattered, clustered. The default is scattered for natural environments; grid for cities.
* **Culling and target** – exclude or target specific surfaces (e.g. only spawn instances above a terrain height).

Procedural instances inside a populator are not individually editable in the viewport. To customize one, drag it out of the populator first; then it becomes a regular object.

## How populators connect to the rest

```mermaid
flowchart TD
    A[AI Composer prompt] -->|outputs| B[Populator]
    C[Manual creation from selection] -->|outputs| B
    D[Library populator templates] -->|drag in as| B
    B -->|footprint defines| E[Area]
    B -->|asset list defines| F[What appears]
    B -->|density slider tunes| G[How much]
    B -->|each instance feeds| H[Visualizer auto-prompt]
```

A populator's name (e.g. "tropical forest", "city block", "wedding crowd") shows up directly in the visualizer's auto-prompt. Renaming a populator from `populator-3` to `dense rainforest understorey` changes the prompt the model receives without you touching the prompt block. See [How the visualizer thinks](/overview/concepts/how-the-visualizer-thinks.md).

Roads, paths, and other linear assets dropped on top of a populator suppress instances underneath them. The webinar demo showed this directly: dropping a road through a forest populator clears trees from the road's footprint automatically. This is the populator behaving like Houdini's boolean culling, with no hand-holding.

## When to reach for it

Three signals:

* **You need fifty or more of the same kind of object.** Crowds, vegetation, traffic, dense urban features. Manual placement falls apart past a couple dozen.
* **You want the distribution to look natural.** A forest dragged in by hand looks like an orchard. A populator with scattered layout and varied density looks like a forest.
* **You want to iterate the look.** Change the asset mix or density slider and the populator regenerates in seconds. Doing the same thing manually means re-dragging.

When not to reach for it:

* **One specific hero object.** Drag the hero in directly. Populators are for fields of stuff, not for the Lambo in your commercial.
* **You need pixel-precise placement of every instance.** Populators distribute procedurally; you don't get to say "this exact tree, two meters left". Convert specific instances to objects if you need that.

## Locking populator instances

{% hint style="warning" %}
Don't try to lock individual procedural instances inside a populator. The lock will be silently overridden the next time the populator regenerates (which can happen on density-slider changes). Lock the whole populator instead, or convert the specific instance to an object first by dragging it out.
{% endhint %}

## Related

* [Build-mode populators page](/build/populators.md)
* [AI Composer](/build/ai-composer.md)
* [How the visualizer thinks](/overview/concepts/how-the-visualizer-thinks.md)
* [Scene Outliner](/build/scene-outliner.md)


---

# Agent Instructions: Querying This Documentation

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

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://help.intangible.ai/overview/concepts/populators.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
