Massive Rendering
To achieve millions of objects on-screen with the player being able to move any of them, we used a heavily modified plugin for compute-accelerated instancing.
A clustered culling algorithm was introduced to pull unnecessary draw calls even before per-instance frustum culling is computed.
We strategically fallback to regular GameObject rendering for special objects to maintain the best tradeoff between fidelity and performance.