WebGPU 3D Loading Showcase

Real 3D data, loaded live in your browser: a 10.65-million-point LiDAR scan carrying its full LAS attribute set — including GPS time — and two Niantic Gaussian-splat captures. BVC decodes its entropy stage on your GPU (WebGPU compute — no other volumetric codec has a browser GPU decode path); the competing formats — Khronos meshopt and Niantic SPZ — decode on a CPU worker thread, because that's the only path they have. Every number below is measured on this page, in this session — nothing is precomputed.

nothing downloads until LOAD — files are 12–255 MB
0 ms bytes → pixels
network — GPU decode — readback → renderer —
Bitruvius
BITRUVIUS
pick a dataset & format · press LOAD

BVC decodes via our hardened decode-only bvc-wasm-gpu artifact — rANS entropy decode + unpack run as WebGPU compute passes on your GPU; the "arena → renderer" window exists only because this demo's renderer is device-isolated from the decoder (a production viewer shares one device and keeps everything resident, no readback). SPZ decodes via the public @bitruvius/turbo-spz CDN bundle (v0.1.0) — faster than Niantic's own libspz wasm, so the SPZ lane is not handicapped. Decoders are pre-warmed before timing; the network window is never cached. Rendering is additive (order-independent) — see the WebGL2 Splat Codec Race for faithful sorted EWA rendering; this page is the WebGPU one, end to end. The BVC crown lane is a fidelity class, not a lossless tier: its color is palette-256 (lossy); geometry and every other attribute are bit-exact. The BVC-in-glTF lane carries a BVC splat tile inside a standard KHR_gaussian_splatting .glb container, decoded straight from the .glb with the same BVC GPU decoder. The meshopt lane runs the official meshoptimizer decoder (MIT, version-pinned — the codec behind KHR_meshopt_compression); the Draco lane runs Google's official decoder (Apache-2.0, pinned 1.5.7, lossless-record settings); the LAZ and COPC lanes run the official laz-perf wasm (Apache-2.0, pinned 0.0.7) — the COPC file is the scan's actual source file, byte-for-byte; LiDAR data is the Autzen Stadium scan, the openly distributed benchmark dataset popularized by the PDAL project. Splat scenes © Niantic, from the open-source libspz repository (MIT, license & provenance). Niantic, SPZ, Khronos, and meshopt identify the formats being compared — no affiliation or endorsement implied.