GPU instance culling: one compute thread per instance tests its bounding
sphere against the camera frustum and (optionally) a Hi-Z pyramid, zeroing the
instanceCount of culled instances in their indirect draw args.
Reusable: the caller owns the bounds + args buffers (so the matching draw can
issue drawIndexedIndirect). See GeometryPass (opt-in) and the geo
path for wiring. The cull is conservative — it never zeroes a visible instance.
GPU instance culling: one compute thread per instance tests its bounding sphere against the camera frustum and (optionally) a Hi-Z pyramid, zeroing the instanceCount of culled instances in their indirect draw args.
Reusable: the caller owns the bounds + args buffers (so the matching draw can issue
drawIndexedIndirect). See GeometryPass (opt-in) and the geo path for wiring. The cull is conservative — it never zeroes a visible instance.