Getting started
Installation and setup
Install Kiwi Grass, configure TerrainLayers, and create the first deterministic field.
Install and verify
Install package.json through Package Manager, import Cinematic Grass Showcase, and open its scene before changing a production Terrain. The sample is the package-safe reference for the expected silhouette, lighting, wind, interaction, multiple-species composition, runtime painting, and quality controls.

Get running quickly with Quick Setup
Quick Setup is a great way to get your first Kiwi Grass field up and running quickly. It reduces onboarding to three short actions:
- Prepare a Terrain with a living-grass TerrainLayer and a separate dirt, path, rock, or other no-grass TerrainLayer.
- Add
TerrainGrassRendererto the Terrain. - Open Actions > Quick Setup, then wait for the renderer status to report Ready.
Quick Setup appends the bundled Dead Lawn layer when needed, resolves the Terrain and layer roles, assigns the bundled material and stomp compute shader, applies a safe starting preset, and starts regeneration. Once the field is visible, use the remaining controls to refine its look, coverage, interaction, and quality for the project.
Configure or refine a Terrain manually
- Use a Terrain with identity rotation and unit scale.
- Add at least three TerrainLayers: living grass, the bundled Dead Lawn layer, and a dirt, path, or rock layer that should not grow grass.
- Add
TerrainGrassRendererto the Terrain. - Assign the living and no-grass roles, then choose Actions > Setup > Apply Current Look (Default).
- Wait for Ready before entering Play Mode or capturing performance.
Choose Cinematic Golden Field only when the longer range, procedural motion vectors, and richer lighting are required. Existing profile-driven renderers can adopt only its horizon treatment through Apply Cinematic Far Quality.
Choose profiles and quality
Profile mode shares grass, wind, and quality presentation between renderers. Embedded mode retains serialized component values. Never edit bundled package presets in place; create an editable project copy from the renderer or profile inspector.
Desktop High plus runtime Medium is the balanced desktop workflow. High keeps the authored profile, Medium applies the locked 75% survivor and shorter distance budget, Low applies the 50% mobile-style runtime budget, and Off submits no grass work.
Add interaction
Enable stomping and add TerrainGrassStompSource to a moving object. Collider contact is the default. Use manual local bounds only for sources without a suitable collider. The sample’s red explorer demonstrates held deformation and recovery.
Add Artist Control and persistent data
Create a project-local control map from Create & Paint Control Map. Author saved masks in the Scene view; use TerrainLayer painting for runtime landscape changes. When startup generation is unacceptable, create a persistent bake after the final Terrain, control-map, profile, and species settings are locked.
Persistent bakes require Terrain rotation (0, 0, 0) and scale (1, 1, 1). The inspector and build validator report the exact reset-and-rebake action when this contract is violated.
Confirm the result
Use the renderer status and debug views to confirm Ready state, expected blade/chunk counts, and no blocked upload. Compare a fixed camera against the durable near, wide, motion, mountain-overlook, and LOD-transition references.

Still stuck?
Bring the renderer status with you.
Include the Kiwi Grass version, Unity and URP versions, operating system, graphics API, renderer status, Player log, and a minimal reproduction.