Kiwi Grass Docs
View product

Performance and compatibility

Optimization

Tune density, distance, chunking, culling, memory, and runtime quality.

Kiwi Grass 26.9.0Unity 6000.0+URP

Measure the Player

Use a Development Player at a fixed resolution, camera, quality level, density, lighting mode, and graphics API. Warm the renderer before sampling. Report CPU frame time, GPU frame time, grass-stage CPU markers, visible blades, visible chunks, indirect commands, GPU memory, and steady-state managed allocation separately.

Editor Game-view FPS is useful for interaction checks but is not a release benchmark. Record controlled Development Player results for the target hardware and keep internal evidence separate from the distributable package.

Select the quality budget

targetpackage profileruntime levelintended use
cinematic desktopCinematicHighhero shots and the 60 FPS reference scene
balanced desktopDesktop HighMediumthe replacement for the old planned Desktop Balanced preset
high mobileMobile HighHighcompute-capable mobile targets after device validation
low mobileMobile LowLowreduced distance, survivors, and cameras
disabledanyOffno culling, upload, stomp, or draw work

High, Medium, and Low reuse the same packed 24-byte blade allocation. Normal Off retains it for instant reactivation. Release Resources While Off is a separate delayed memory policy and can add a reload or regeneration cost later.

Tune the real bottleneck

  • If GPU time rises with stable CPU time, reduce survivor density, maximum distance, shadows, procedural motion vectors, semantic field resolution, or overdraw-heavy far width.
  • If CPU grass stages rise with species count, inspect visible commands. Species share one blade budget but require material and geometry command ranges.
  • If memory is high, lower the total blade cap or author a smaller field. Do not create one blade allocation per runtime quality level.
  • If dirty painting stalls, increase chunk size only after measuring the tradeoff between command count and patch granularity.
  • If a distant field is open and automatic Hi-Z has no profitable occlusion, its backoff path is expected. Do not force Hi-Z merely because it exists.

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.

Email supportJoin Discord

Kiwi Grass 26.9.0

Search documentation