Grass Forge


- Estimated graphics memory: 537 MB - Total allocated memory: 1.2 GB ... baking, indirect rendering and practical editor tools. Inside the package ... GrassForge runtime component


by Evgenii Nikolskii


Price History +

Grass Forge is a GPU-driven procedural grass system for Unity 6 and the Universal Render Pipeline.

Grass Forge uses GPU instancing and Graphics.RenderMeshIndirect. The optional compute shader performs coarse frustum and distance culling. The system creates three LOD meshes and one runtime material per LOD. Grass uses forward and depth passes and does not cast or receive shadows.

Visible blade count, alpha clipping, overdraw, and geometry determine GPU cost. GPU culling reduces work from off-screen chunks but does not make visible blades free.

Use chunk size and LOD distances to balance GPU culling, transition behavior, and GPU cost. For dense scenes, disable Live Update while making several authoring changes and press BAKE manually when ready.


At 75,000 grass blades, GrassForge remains highly performant in the sample scene, maintaining approximately 230 FPS with a global frame time below 5 ms. The main performance costs at this density are expected to come from geometry processing, alpha-tested overdraw, and memory usage rather than from draw-call count. These results should be treated as an example reference point, not as a universal hardware requirement.

- Average frame rate: 229.8 FPS

- Global frame time: 4.4 ms

- CPU Main Thread / Render Thread: 50.1% / 49.9%

- Triangles: approximately 93.5k

- Vertices: approximately 57.4k

- SetPass calls: 7

- Draw calls: 186

- Instance draw calls: 182

- Estimated graphics memory: 537 MB

- Total allocated memory: 1.2 GB

Extreme user-generated configurations, such as hundreds of thousands or millions of grass blades, can still exceed available GPU memory and rendering capacity.

It distributes grass over Terrain and readable Mesh surfaces, bakes placement data, and renders the result with GPU instancing and indirect rendering.


GPU-driven procedural grass for Unity 6 and the Universal Render Pipeline, with fast

baking, indirect rendering and practical editor tools.


Inside the package

A complete grass workflow for Terrain and readable Mesh surfaces. Configure placement, appearance and performance from one GrassForge component, then bake the result for rendering.

  • GrassForge runtime component
  • GPU chunk culling
  • Three levels of detail
  • Wind and distance controls
  • Terrain surface support 
  • Readable Mesh surface support
  • Surface mask painting
  • Runtime sphere bending
  • Demo scene and sample assets