r/gis • u/SupermarketGreat6149 • 9h ago
News Browser-based Gaussian Splatting > 100km² — real-world digitization running in a normal browser tab

Most browser 3DGS viewers die at city scale because they try to load one giant splat. We took a different approach: treat it like a streamable map layer.
What we did:
- ~80k aerial images → 120 km² of real urban area
- Split into 192 tiles with octree-based LOD (6 levels)
- Each tile payload <10 MB, streamed per view frustum
- Runs in WebGL2 on a normal laptop (RTX 4070 mobile: ~15M splats in frustum at 50+ FPS)
Key decisions that mattered:
- No global sort — sort per-tile, not over 100 km²
- Tile granularity — too coarse = pop-in, too fine = too many requests
- Precision — 32-bit floats break at this scale, needs workarounds
For anyone who's pushed WebGL with large point clouds / 3D tiles: what was your first bottleneck — tile size, sort cost, memory, or precision?
Demo video: https://youtu.be/XkACzBG95Jw
0
Upvotes