Grass: quality and performance¶
The PERFORMANCE group on the Grass tab edits the rig's Quality Asset, shared by
every patch under the rig. It holds what your project can afford; the look profiles hold
how grass looks. The "Shipped preset" column is GrassQuality_Preset, which new rigs
get.
Draw Distance¶
| Setting | What it does | Default | Shipped preset |
|---|---|---|---|
| Max Draw Distance (m) | Blades further from the camera are not drawn at all. | 200 | 100 |
| Fade Length (m) | How many metres before Max Draw Distance the fade runs. The far field also thins across this band, so thinning and fading always agree. | 50 | 25 |
| Density Scale | Share of each patch's blades that are drawn, 0.05 to 1. Lower thins every field at once, with no rebuild: always the same subset of blades, not a different one each frame. Use it for a grass amount option in your game's settings. | 1 | 1 |
| Fade Mode (MORE) | Smooth shrinks blades into the ground; Dither dissolves them with a screen-space pattern. | Dither | Dither |
A status line shows the result, for example Full density to 75 m · faded out by 100 m.
Camera Splay¶
Blades near the camera lean away from it, so a top-down view sees blade faces instead of the gaps between upright blades. Patches with Camera Effects off ignore it.
| Setting | What it does | Default | Shipped preset |
|---|---|---|---|
| Strength | How hard nearby blades lean away. 0 is off. | 0.65 | 0 |
| Radius (m) | Radius around the camera inside which blades splay. | 12 | 89.1 |
| Max Offset (m) | Largest tip offset. | 0.45 | 0.45 |
View Facing¶
Blades are flat cards. Near edge-on, a blade turns its width toward the camera so its paper-thin edge never shows; its bend and lean stay as planted, and blades already facing the camera keep their facing. Patches with Camera Effects off ignore it.
| Setting | What it does | Default |
|---|---|---|
| Strength | 1: a blade edge is never visible. 0: off. | 1 |
Interaction¶
See Grass: interaction.
Shadows¶
| Setting | What it does | Default |
|---|---|---|
| Cast Shadows | Blades cast shadows on the ground and on each other. It costs a full shadow pass and can show a cascade boundary that follows the camera. Cloud shadows do not need it. | Off |
| Shadow Strength | How dark shadows falling on the grass get. 0 is unshadowed. | 1 |
| Shadow Tint | The colour a fully shadowed blade tints toward. Match it to your ground materials' shadow colour, or the grass sits in a differently coloured shadow to the terrain. | Pale blue |
Terrain Map¶
The capture behind terrain blending. Project settings, not art.
| Setting | What it does | Default |
|---|---|---|
| Layer Mask | Layers captured into the ground colour map. Put the ground on its own layer and pick only that one to keep props out of the map. | Default |
| Resolution | Texels across the map, 128 to 2048. | 512 |
| Real-Time Update | Capture the map every frame. That renders the scene a second time, from a top-down camera, each frame: leave it off unless the ground colour actually animates. | Off |
| Scaling (MORE) | How tightly the capture frames the ground. Lower frames a wider area at lower detail. | 2.5 |
| Grass Render Layer (MORE) | Layer the grass draws on, left out of the capture. Your cameras' culling masks must include it. | 10 |
Where the capture saw nothing on the Layer Mask, the map holds a neutral grey, and blades there blend toward it. Blades past the edge of the map take the colour at its edge.
Diagnostics¶
| Setting | What it does | Default |
|---|---|---|
| Force CPU Instancing | Ignore compute-shader support and use the CPU instancing path, the one WebGL 2 runs. Use it to preview a web build's grass and frame rate on desktop. | Off |
What costs what¶
- Blade count is the main cost: density × area, capped by Max Instances. On the compute path each blade holds two 64-byte matrices on the GPU, so 200,000 blades take about 25 MB.
- Draw distance and Density Scale cut what is drawn each frame without a rebuild.
- Cast Shadows draws the grass a second time for the shadow map.
- Real-Time Update renders the scene a second time every frame.
- Interaction keeps two half-float render textures of Map Resolution squared, about 2 MB each at 512, and updates them once per frame.
- Cloud shadows redraw the mask once per frame; memory is 4 bytes per texel.