Table of Contents

Dynamic Density


Dynamic density is a GPU-side feature that gradually thins out instances based on distance or screen size. Unlike distance culling which removes all instances beyond a threshold, dynamic density reduces the proportion of visible instances over a range — producing a smooth falloff that's far less noticeable.

Each instance has a deterministic hash based on its position, so the same instances are always culled at the same distance. No flickering or randomness.

Two Modes

  • Screen Size — Density based on how large the instance appears on screen. Consistent regardless of camera FOV.
  • Distance — Density based on world-space distance. Direct control over falloff in meters.

Runtime Density Scaling

The system also supports a global runtime density scale via BRGInstancedRenderer.Instance.SetDensity(float), allowing you to dynamically adjust instance density at runtime (e.g., for quality settings or performance scaling). Prototypes must have Enable Density Scaling checked to participate.

Best For

  • Grass and ground cover — Thousands of instances where distant thinning is invisible
  • Dense forests — Gradually thin trees at the horizon for smoother falloff
  • Small props and debris — Reduce count at distance without a hard cutoff

For density settings, see BRG Prototype Extra Data.