Drawing Heaps of Objects on Console, Fast, as an Indie
summary
Projects use Graphics.DrawMeshInstancedIndirect plus GPU-side compute to cull and drive instance counts, moving transform data into GPU compute buffers and packing transforms as 3x4 matrices to cut bandwidth ~25%. On PS4 VR (two 60fps eyes, 40% larger than 1080p) this shifts work off the CPU, fixes heavy render-thread culling, and lets a Hi‑Z mipmap compute cull thousands of objects on the GPU, dropping worst-case frames from ~90 ms to ~32 ms. Notes include a zero‑scale-first-instance bug workaround and a batch‑cleanup leak that accumulated stray two‑instance batches.
AI-written summary · about
chapters (6)
- 0:00Start
- 4:11Example Transition
- 14:22Additional improvements
- 22:25What happens If you custom batch static batched objects (at runtime)?
- 27:54Cheap culling without AppendBuffers
- 38:34Performance Fixing in Table of Tales
related talks
49mRefactoring the Mesh Drawing Pipeline
24mOptimizing and Building UI for AAA Games
39mFantastic Bottlenecks and Where to Find Them
55m“Design Patterns for Low-Level Real-Time Rendering”
43mGraphics performance in The Supernauts
50mEngine Tools for Performance on Open World Games
01h 00mUnreal Engine Game Optimization on a Budget
46mNew Unity Features Seen Through the Profiler
