|
| 1 | +# Scatter |
| 2 | + |
| 3 | +*New in 1.43.* Scatter places many copies of a model — rocks, trees, grass, crates, barnacles — over a surface and |
| 4 | +draws them all together, so thousands cost about as much as a handful of objects. It works on a |
| 5 | +[Terrain](terrain.md#scatter) and, since 1.43, on **any object**. |
| 6 | + |
| 7 | +A scatter set is **its settings + a seed + your hand edits**. Every computer in your session builds the same instances |
| 8 | +from those, and so does every reload — a set of thousands of instances travels as a few hundred bytes. |
| 9 | + |
| 10 | +## Add scatter to an object |
| 11 | + |
| 12 | +Select any mesh or placed model ▸ **Properties ▸ Scatter** (right after the Water section's *Add bubble emitter* / |
| 13 | +*Add pour emitter*) ▸ **Add scatter**. 200 instances of the brush's current model fill the whole surface. The instances |
| 14 | +belong to the object: move, turn or scale it and they come along, for everyone in the session. |
| 15 | + |
| 16 | + |
| 17 | + |
| 18 | +On a Terrain the Scatter section stays where it was (after Terrain paint) with the same rows. **Add fill** adds another |
| 19 | +set; **Paint scatter…** (or **Scatter…** on a terrain) opens the scatter brush to paint by hand. |
| 20 | + |
| 21 | +## Fill and masks |
| 22 | + |
| 23 | +Each set's **Fill** block places instances over the whole surface instead of by hand: |
| 24 | + |
| 25 | +| Row | What it does | |
| 26 | +|---|---| |
| 27 | +| **Count / Density** | Exactly N instances over the surface, or N per square metre. | |
| 28 | +| **Spacing** | The minimum distance between two instances (0 = off) — nothing closer, nothing overlapping. When the surface is full, Count places what fits and stops. | |
| 29 | +| **Slope** | Only where the surface is between two angles from "up": 0° flat ground, 90° a wall, 180° an overhang. 0–30° keeps instances on the flat top of a rock. | |
| 30 | +| **Height** | Only between two heights, in metres, measured in the object's own frame. | |
| 31 | +| **On paint** | (Terrains) only where a painted layer covers the ground, above a Coverage threshold. Repaint and the fill follows. | |
| 32 | +| **Re-roll** | A new seed: a fresh layout with the same settings. Every instance you edited by hand is kept. | |
| 33 | +| **Remove fill** | The fill goes; instances painted by hand stay. | |
| 34 | + |
| 35 | +**Align** stands each instance on the surface (on by default on objects); switch it off to keep them upright. Masks and |
| 36 | +density are measured before the object's scale, so moving or scaling the object never reshuffles a fill. |
| 37 | + |
| 38 | +## What you can scatter |
| 39 | + |
| 40 | +- **Primitives** and **Library models**. |
| 41 | +- **Pack items** — a kit piece such as a Nature Kit rock, picked in the model list. Everyone fetches it from the pack |
| 42 | + server, so nothing extra travels. |
| 43 | +- **Prefabs** — a prefab scatters as its **look only** (model and materials); its logic, physics and scripts are not |
| 44 | + copied, and the model's row says so. [To objects](#convert-both-ways) brings the real prefab back, logic and all. |
| 45 | +- **Use as scatter source** — right-click any object ▸ **Physics & effects ▸ Use as scatter source**, then paint it. A kit piece you have not |
| 46 | + edited scatters as its pack item; anything else scatters as its look. |
| 47 | + |
| 48 | +### Mix, tint and sink |
| 49 | + |
| 50 | +- **Add a model to the mix** turns a set into a weighted mix — three rocks at 50/30/20. Drag a model's **w** to change |
| 51 | + how often it is picked; ✕ removes a model and the instances painted with it. |
| 52 | +- **Tint** varies each instance's colour a little (0 = all alike). |
| 53 | +- **Sink** pushes each instance into the ground, in metres at scale 1 (bigger instances sink deeper); a negative value |
| 54 | + lifts them. |
| 55 | + |
| 56 | +## Edit instances |
| 57 | + |
| 58 | +On a terrain, the scatter brush in the Sculpt toolbox has a row of **tools**: |
| 59 | + |
| 60 | +| Tool | What it does | |
| 61 | +|---|---| |
| 62 | +| **Paint** | Paints instances of the model picked above. | |
| 63 | +| **Erase** | Removes instances under the brush. | |
| 64 | +| **Rotate** | Turns the instances under the brush (*Turn the other way* reverses). | |
| 65 | +| **Scale** | Grows them (*Shrink* to shrink). | |
| 66 | +| **Relax** | Evens out the spacing under the brush — clumps spread, nothing leaves the brush. | |
| 67 | +| **Select** | Pick instances and edit them directly. | |
| 68 | + |
| 69 | +**Affects** (every tool but Paint) limits a tool to one model of a mix — erase only the boxes, turn only the trees. |
| 70 | + |
| 71 | + |
| 72 | + |
| 73 | +**Select**: click an instance; <kbd>Shift</kbd>/<kbd>Ctrl</kbd>+click adds or removes; drag a box to select everything |
| 74 | +inside it; <kbd>Ctrl</kbd>+<kbd>A</kbd> selects every instance of the Affects model. The gizmo's **Move** slides the |
| 75 | +selection over the ground, **Turn** rotates it about up, **Size** scales it — one drag is one undo step. The toolbox adds |
| 76 | +**Turn left / Turn right** (15°), **Bigger / Smaller** (10 %), **Re-roll** (a new random turn and size), **Delete** (or |
| 77 | +the <kbd>Delete</kbd> key — it deletes instances, never the terrain) and **To objects**. <kbd>Esc</kbd> drops the |
| 78 | +selection; a second <kbd>Esc</kbd> leaves sculpting. |
| 79 | + |
| 80 | +!!! note "On an object" |
| 81 | + On a mesh or a model (not a terrain) the scatter brush has **Paint** and **Erase**; the other tools are |
| 82 | + terrain-only for now. |
| 83 | + |
| 84 | +## Convert both ways |
| 85 | + |
| 86 | +- **Instances → objects**: *To objects* in the Select tool (the selection) or on a model's row in Properties ▸ Scatter |
| 87 | + (every instance of it). Each instance becomes a real object exactly where it stood — on the ground, turned, tilted |
| 88 | + and sized the same. A prefab's look becomes the **real prefab with its logic** (when that prefab is in your |
| 89 | + library); a pack item becomes the pack piece. More than 500 asks first. One undo turns them back into instances. |
| 90 | +- **Copies → scatter**: select several copies of one primitive or one Library model standing on a Terrain, |
| 91 | + right-click ▸ **Make scatter**. They become instances of that model's scatter on the terrain (position, turn and size |
| 92 | + kept) and the objects go. One undo turns them back. |
| 93 | + |
| 94 | +## Distant scatter (each device) |
| 95 | + |
| 96 | +Far scattered models fade out so each device stays inside its budget — about half of its triangle line in the |
| 97 | +[budget meter](performance.md#the-budget-chip-will-it-fit-on-a-quest) (Quest 150k, phone 250k, desktop 2M). The layout |
| 98 | +is the same everywhere: instances within 30 m of you, and every [collider](terrain.md#scatter-collider), are never |
| 99 | +thinned, so a ball hits the same rock on a phone and on a desktop. |
| 100 | + |
| 101 | +**Settings ▸ Scene ▸ Performance ▸ Distant scatter**: **Auto** (reads the device) / **Headset** / **Phone** / **Desktop** |
| 102 | +/ **All** (draws everything). This device only. |
| 103 | + |
| 104 | +!!! note "Limits" |
| 105 | + Up to 8 scatter sets and 8,000 instances per object or terrain (painted and filled together). Filling 5,000 |
| 106 | + instances on a 100,000-triangle model takes about 10 ms on a desktop (25–55 ms with spacing and a slope mask). |
| 107 | + Everything replicates, undoes in one step per stroke, drag or command, and saves with the scene. |
0 commit comments