Close view of dense Kiwi Grass blades rendered on a Unity Terrain

Kiwi Grass

Available now

Bring your terrain to life.

Build dense, responsive grass from Unity TerrainLayers. Shape up to four species, add collider-driven interaction, and scale the field with shared runtime quality levels.

Fab AvailableUnity Asset Store Available

Version 26.9.0 · Watch the 10-second grass demo

  • Unity6000.0+
  • PipelineURP
  • Field1–4 species
  • Runtime records24 bytes
  • RenderingGPU indirect
  • ValidationTested editor matrix

See the validation guide for exact tested editors and separately labeled historical performance references.

See it in action

A closer look at the field

10-second grass demo · silent · plays when you choose.

Read the video description

The camera moves across a grassy terrain, revealing dense blades, wind movement, uneven ground, and a painted bare patch. The clip is silent. Recorded with Unity Recorder in Unity 6000.4.0f1 using the 26.8.0 grass showcase and a cinematic grade. It demonstrates appearance, not current-release performance.

one connected field workflow

A complete field workflow, not just a grass shader

Kiwi Grass connects TerrainLayer-driven placement, deterministic field generation, artist-authored masks, local influence volumes, interaction, quality scaling, persistent data, diagnostics, and reproducible performance capture in one URP package.

01

Terrain-native setup

Turn living and excluded TerrainLayers into a deterministic field through one guided renderer workflow.

02

One to four species

Compose stable-ID species inside one shared blade budget instead of duplicating complete fields.

03

Artist control

Paint density, height, dryness, and wind response, with bounded updates for changed regions.

04

Responsive interaction

Bend, flatten, sweep, hold, and recover grass from collider-driven sources.

05

Scalable presentation

Use four geometry tiers, layered wind, motion vectors, shadows, and High, Medium, Low, and Off runtime levels.

06

Production evidence

Inspect blade, chunk, command, memory, culling, and capture data with built-in diagnostics and fixed-camera tools.

guided authoring

From Terrain to a moving field

  1. 01

    Choose TerrainLayers

    Assign grass-bearing and excluded surfaces.

  2. 02

    Apply a verified setup

    Start with Current Look or the heavier Cinematic presentation.

  3. 03

    Shape the field

    Paint the control map, add local volumes, or compose multiple species.

  4. 04

    Add interaction

    Attach stomp sources to moving collider objects.

  5. 05

    Measure and ship

    Select a runtime quality level, inspect diagnostics, and capture the target Player.

Follow the setup guide

four geometry tiers

Near silhouette. Coherent distance coverage.

Four geometry tiers preserve close blade shape while transitioning into stable mid and far coverage. Desktop Automatic Hi-Z activates only on supported, stable, profitable views and otherwise falls back to the normal renderer.

Close view of dense Kiwi Grass blades across a Unity Terrain
Close fieldLayered blades retain readable shape and response.
Wide Unity terrain showing Kiwi Grass geometry transitions into the distance
Distance coverageMid and far tiers preserve a coherent field without claiming a before-and-after comparison.

configuration-specific reference evidence

Measured in Development Players

Kiwi Grass reports whole-frame timing separately from grass cull and command preparation, buffer upload, indirect submission, visible work, GPU memory, and steady managed allocation. The values below predate the current release and sample move. They describe specific historical test configurations.

Historical performance reference. These 300 m and 1000 m measurements predate release 26.9.0 and the package-safe sample move. They do not establish performance for the currently distributed package.
windows referenceVulkan · RTX 2080 Ti
Generated blades
35,557,827
Visible blades
1,335,777
Whole-frame CPU mean
6.0587 ms
Whole-frame GPU mean
5.9741 ms
Grass cull/command mean
0.1201 ms
Steady managed allocation
0 B*

Windows 11 build 26200 · Unity 6000.4.0f1 · URP 17.4.0 · 1920 × 1080 · NVIDIA driver 610.47

metal referenceApple silicon · Metal
Visible blades
505,113
Visible chunks
64
Indirect commands
78
Whole-frame CPU mean
4.8969 ms
Whole-frame GPU mean
5.4708 ms
Steady managed allocation
0 B*

Unity 6000.4.0f1 · URP 17.4.0 · 1920 × 1080 · GrassDemo300

*Measured inside the configuration-specific grass render loop. Player performance was measured on Unity 6000.4. The wider Unity 6000.0+ matrix validates package resolution, compilation, shader import, release checks, and EditMode behavior on the named editors.

See benchmark methodology
Wide rocky Unity terrain covered by Kiwi Grass

sample and documentation

Learn it from a working field

The Cinematic Grass Showcase combines Quick Setup, a two-species meadow, runtime TerrainLayer painting, collider interaction, quality switching, and performance inspection in one self-contained sample.

  • Playable 128 m authored showcase
  • Package-safe 300 m and 1000 m benchmark scenes
  • Setup, authoring, optimization, API, upgrade, and troubleshooting docs
Explore sample workflows

ship against an explicit boundary

Requirements and current limitations

Requirements

  • Unity 6000.0 or newer
  • Universal Render Pipeline and Core RP bundled with the supported Unity 6 editor
  • Compute-shader and indirect-rendering support
  • URP Forward and Forward+ package shader paths

Current limitations

  • HDRP and the Built-in Render Pipeline are unsupported.
  • Mobile devices and unmeasured graphics APIs are not advertised.
  • Persistent bakes require identity Terrain rotation and unit Terrain scale.
  • Automatic Hi-Z is unavailable on pre-6000.3 editors and uses the normal renderer there.
Read the compatibility matrix

common questions

Before you build the field

Does Kiwi Grass work with HDRP or Built-in?

No. Kiwi Grass is designed for Unity 6 URP.

Does it create a GameObject for every blade?

No. Kiwi Grass builds packed field data and submits grouped indirect draws.

Can I use multiple grass types?

Yes. A field can combine up to four stable-ID species within one shared blade budget.

Can grass react to a player or vehicle?

Yes. Collider-driven sources can bend, flatten, sweep, hold, and release grass into recovery.

Can artists paint where grass grows?

Yes. TerrainLayers define broad eligibility, and project-owned control maps provide density, height, dryness, and wind-response painting.

Can I avoid generating the field at startup?

Kiwi Grass supports project-owned persistent bakes. They require zero Terrain rotation and unit scale.

Is the benchmark an FPS guarantee?

No. It is a historical Development Player reference with disclosed hardware and test configuration, recorded before the current package release.

Where do I get support?

Email support@kiwistudios.co or join the Kiwi Studios Discord.

kiwi grass

Build the field. Keep control of the budget.

Kiwi Grass brings terrain-aware placement, responsive presentation, measured diagnostics, and production-focused documentation into one Unity 6 URP workflow.

Available on Fab & Unity Asset Store