Anyone encountering the term for the first time stumbles over the slightly cumbersome name. Behind it lies a rendering method that was presented in 2023 by researchers led by Bernhard Kerbl and has been turning the 3D industry upside down ever since.
The principle: A real scene—a racetrack, a venue, a product—is photographed or filmed from many angles. From these recordings, millions of small, semi-transparent 3D ellipsoids are created, so-called Gaussian distributions. Each of these ellipsoids carries information about position, shape, color, and transparency. In real-time, they are assembled on the screen—the result is a photorealistic image that behaves correctly when the camera moves.
The crucial difference from traditional 3D models: There's no mesh, no UV maps, no rigging. The scene is literally built from points of light. This makes it photorealistic on one hand – reflections, light, and fine surfaces are taken exactly from the original photos – and on the other hand, renderable in real-time for WebGL.
Anyone who believes you can just take a 3DGS file and upload it to a website is underestimating the effort considerably. The raw material from training — a .ply-file—is usually between 500 megabytes and 2 gigabytes in size. Direct to the web? Not an option.
In addition, there are the stringent requirements of a brand website:
The first step after training is compression. The free, browser-based tool SuperSplat PlayCanvas takes on exactly this task.
SuperSplat opens the raw .ply-file and allows for visually cleaning up the scene: removing floaters—these are Gaussians floating in empty space that do not contribute to the image—cropping the scene, defining the viewport, and reducing the total number of Gaussians. For desktop browsers, a guideline is a maximum of 3 million Gaussians, and for mobile devices, it's better to be under 500,000.
The result will be shown as .dogs-file exported — the native format of the PlayCanvas ecosystem. .dogs stands for Splat Object Gaussian Stream and brings two crucial properties: It is highly compressed (typically 70 to 90 percent smaller than the original .ply file) and supports progressive streaming — the browser begins rendering even while the file is loading.
For comparison: The widespread .splat-The format is uncompressed and does not support streaming. The .ksplatThe format is compressed, but not natively integrated. .dogs is the consistently right choice for web deployment in the PlayCanvas stack.
There are several ways to render a 3DGS scene in the browser:
Luma AI offers a hosted embed code — iframe or JavaScript — that doesn't require its own infrastructure and works well on mobile devices. A quick solution for pure display without interactivity. It's not enough for a brand experience with its own look, hotspots, and storytelling.
Polycam Offers similar features: easy embedding, CMS-friendly, but with little control over the appearance or flow of the experience.
mkkellogg/GaussianSplats3D is an open-source package based on Three.js that can be integrated into React or Next.js projects as an npm module. Full developer control — but all interactivity must be built from scratch. No editor, no interface for non-developers.
PlayCanvas plays in a different league. The open-source WebGL engine was added native 3DGS support in 2024. What sets PlayCanvas apart from everyone else: The scene and all interactive elements — hotspots, animations, UI, audio — run in a single WebGL context. There's no need to cobble together a splat viewer with a separate UI layer. The Entity-Component system allows JavaScript scripts to be attached directly to splat objects in the scene.
In addition, PlayCanvas and SuperSplat share the same format. .dogs-file that exports SuperSplat loads PlayCanvas directly - no conversion step, no intermediate stop.
This is the crucial building block for editorial brand websites: StorySplat.
StorySplat is a low-code authoring tool built on the PlayCanvas engine. It's not primarily aimed at developers, but at producers and creative technologists – the people who want to tell a story without the desire for engine code.
The result is a PlayCanvas runtime bundle. This means that what StorySplat produces is not an external system – it's the same PlayCanvas core that a developer can extend with their own scripts at any time when the no-code limits are reached. No stack switching, no re-exports, no friction.
In summary, the recommended pipeline looks like this:
.ply — from the 3D scanning service provider
SuperSplat Cleaning · Pruning · Compression
.sogs Export — 70–90 % smaller
CDN Cloudflare / Fastly — CORS · HTTP/2 · Streaming
StorySplat — Hotspots · Camera Control · Transitions
PlayCanvas Runtime — Custom scripts as needed
iframe / JS-Embed → Next.js · Contentful · WordPress
Static fallback image WebGL2 + IntersectionObserver
Sports brands, automakers, event organizers, tourism providers—anywhere a website is meant not only to inform but also to tell a story, the requirements are similar: fast loading times, cross-device compatibility, CMS integration, and the ability not only to display content but also to guide users.
3DGS fulfills these requirements today. A racetrack, an event venue, a vehicle — as a photorealistic, interactive 3D scene in the browser, with hotspots that provide information and camera guidance that directs the view.
3D Gaussian Splatting has arrived on the web. The toolchain from .ply until the finished interactive experience is mature, documented, and deployable today. Brands that invest in this workflow now will build a lead that will be difficult to catch up to in the coming years.
The PlayCanvas ecosystem — SuperSplat for compression, .dogs as a delivery format, StorySplat for authoring, PlayCanvas Engine for custom extensions — is the most coherent and best-integrated stack currently available.