A developer walks through optimizing a grass rendering system for a game, tackling two core problems: GPU culling limits and uniform detail at all distances. The solution uses spatial chunking (dividing the grass field into segments) to scale coverage beyond 262,000 blade limits, then layers on level-of-detail (LOD) switching per chunk based on camera distance, and finally adds distance-based grass cutoff hidden by fog. Performance improves from ~64 FPS to ~100 FPS on an Nvidia GTX 1660. The post also breaks down the memory cost: 7.3 million grass blades at 28 bytes each results in ~408 MB of VRAM usage across two buffers.

8m watch time

Sort: