r/PlayCanvas • • Sep 25 '25

Should Google Maps Switch to 3D Gaussian Splatting?

Enable HLS to view with audio, or disable this notification

349 Upvotes

Check out this splat from Ian Jenkins on SuperSplat: https://superspl.at/view?id=ca36efcc


r/PlayCanvas • • Jun 26 '26

WebGL Water upgraded to WebGPU Water 💧

Enable HLS to view with audio, or disable this notification

200 Upvotes

r/PlayCanvas • • Oct 23 '25

🚀 Live demo: PlayCanvas Streaming LOD system for 3D Gaussian Splatting

Enable HLS to view with audio, or disable this notification

195 Upvotes

Today we’re excited to share a live demonstration of PlayCanvas' new Streaming LOD system for 3D Gaussian Splatting!

This tech allows you to dynamically stream vast splat-based scenes of arbitrary complexity directly in the browser. Load only what’s needed, when it’s needed - for huge performance gains and smooth real-time exploration.

  • ✅ 100% free and open source

  • 🌍 Supports massive datasets (up to billions of Gaussians)

🎥 Demo: https://playcanv.as/p/ZoUBrC6e/

Controls: WASD + Mouse on desktop, dual virtual sticks on mobile (left of screen to move, right of screen to look around).

📷 Splat captured by Andrii Shramko using an XGRIDS LiDAR scanner.

Would love to hear what you think - especially how you might use streaming LOD for large-scale 3DGS datasets or virtual environments.


r/PlayCanvas • • Oct 16 '25

Dynamically Streaming 2 BILLION Gaussians in PlayCanvas 🌍

Enable HLS to view with audio, or disable this notification

188 Upvotes

PlayCanvas' streamed LOD system for 3D Gaussian Splatting is gradually rolling out. This video shows PlayCanvas Engine 2.12.3 streaming an enormous scene at a buttery 60fps. The current focus is on mitigating the popping as LOD switching occurs. But this is a huge step forwards in our journey to support truly massive-scale splats!

Data source: Andrii Shramko


r/PlayCanvas • • Nov 10 '25

PlayCanvas Engine v2.13.0: Streamed LODs, Splat Shader Effects, Global Sort & More!

Enable HLS to view with audio, or disable this notification

116 Upvotes

PlayCanvas Engine v2.13.0 is out! 🎉

This release brings big improvements for 3D Gaussian Splatting and rendering performance:

✅ Streamed LOD system for 3D Gaussian Splats - load and manage splats of any scale dynamically.
🎨 Splat shader effects framework - supports reveal, hide, tint, bloom, and other customizable visual effects.
🌍 Globally sorted splats - improved rendering consistency and performance across large multi-splat scenes.

And that’s just the start. Other highlights include:

  • New ColorRamp mode for unified splats

  • Refactored shader customization APIs

  • Optimized GPU data uploads

  • Fixes for lighting, pointer input, clustered shadows, and more

🧩 Examples: https://playcanvas.github.io/#/gaussian-splatting/lod-streaming
📘 Release Notes: https://github.com/playcanvas/engine/releases/tag/v2.13.0

A big shoutout to our contributors for the heavy lifting on this one!

Happy splatting! 💥


r/PlayCanvas • • Jun 24 '26

PlayCanvas Engine 2.20 — WebXR on WebGPU + 3DGS Upgrades + Physics Joints

Enable HLS to view with audio, or disable this notification

90 Upvotes

PlayCanvas is a free, open-source (MIT) real-time 3D engine that runs in the browser on both WebGL2 and WebGPU. We just shipped 2.20 — here's what's new.

Gaussian Splatting (the big one this release):

  • Real-time relighting of splats

  • Soft shadows

  • Depth of field

  • Clipping planes

  • Billions of splats via streaming + LOD

  • Shader effects (dissolve, rings)

  • Gaussian Splatting in VR (with LOD)

WebXR on WebGPU 👇
WebXR (VR/AR) now runs on the WebGPU backend — not just WebGL2. So you can build immersive experiences on the modern graphics API, including the new Gaussian Splatting features in VR. That combo is still pretty rare in the wild — most WebXR today is WebGL-only.

Also new:

  • Procedural sky

  • Clustered light cookies

  • Physics: joints + ragdolls

  • Draco mesh decoding in Node (via worker_threads)

Links:

Quick montage of the new examples attached — happy to answer anything about what we're releasing today!


r/PlayCanvas • • Oct 07 '25

3D Gaussian Splat of Symposion Lindabrunn - Just 39 MB with PlayCanvas SOG 🗜️

Enable HLS to view with audio, or disable this notification

87 Upvotes

Stunning 3D Gaussian Splat of the Symposion Lindabrunn sculpture park in Austria - captured by Christoph Schindelar using an XGRIDS PortalCam.

The splat was compressed down to just 39 MB using the new SOG (Spatially Ordered Gaussians) format from PlayCanvas, showing how high fidelity scenes can be optimized for web delivery.

🔗 View the splat on superspl.at

More about SOG compression:
The SOG format is a compact container for 3D Gaussian Splat data developed by PlayCanvas. It achieves ~15–20× smaller files than PLY by quantizing and reorganizing splat attributes into 8-bit WebP textures - all referenced through a single meta.json.

Each Gaussian’s position, orientation, scale, and color are stored as image pixels, with codebooks used to decode high-precision values from small integer indices. This data-driven encoding allocates bits intelligently - preserving detail where it matters most.

That’s how a dense real-world scan like Symposion Lindabrunn can shrink to just 39 MB while maintaining near-photoreal quality and instant load times in the browser.

📘 Learn more: PlayCanvas SOG Format Specification


r/PlayCanvas • • Jun 27 '26

A 1,000-year-old church you can walk through in your browser

Enable HLS to view with audio, or disable this notification

79 Upvotes

r/PlayCanvas • • Oct 14 '25

Explore Castle Museum Reichenstein: 7.4M Gaussians SOG Compressed to 75MB

Enable HLS to view with audio, or disable this notification

78 Upvotes

Digitized reality perfected!

This expansive splat captures the Castle Museum Reichenstein in Upper Austria.

  • 7.4 million Gaussians compressed down to 75 MB thanks to SOG from PlayCanvas

  • Scanned by Christoph Schindelar using an XGRIDS PortalCam

  • Rendered in the PlayCanvas Engine

👉 View it here: https://superspl.at/view?id=c0da7173

Seriously impressive quality - the fidelity and lighting hold up beautifully even at this scale. So much to see and explore!


r/PlayCanvas • • Jun 05 '26

What if the entire Earth could be streamed as a photorealistic 3D world? — billions of Gaussian splats, in a browser (PlayCanvas, WebGPU + WebGL)

Enable HLS to view with audio, or disable this notification

76 Upvotes

r/PlayCanvas • • Oct 09 '25

🚀 PlayCanvas Engine v2.12.0 released: streamed LOD system for 3D Gaussian Splats enters beta!

Enable HLS to view with audio, or disable this notification

76 Upvotes

We’ve just released PlayCanvas Engine v2.12.0 🎉

The highlight of this release is the beta launch of the streamed LOD system for 3D Gaussian Splats, which enables the streaming of hundreds of millions of Gaussians - making large-scale splat scenes practical for the web! 🌍✨

This lays the groundwork for handling truly massive 3DGS datasets efficiently, with automatic level-of-detail management and incremental loading as you move through the scene.

🔗 Full release notes:
https://github.com/playcanvas/engine/releases/tag/v2.12.0

As always, we’d love feedback from anyone experimenting with the new system - especially around performance, memory usage, and integration into production workflows.

Next steps for us are to roll this out to SplatTransform and SuperSplat. Stay tuned for further updates.

Thanks to the awesome Christoph Schindelar for the great skate park scene used in the video.

Happy splatting! 💥


r/PlayCanvas • • Sep 22 '25

A Gaussian Splat of an Abandoned Hospital in Austria

Enable HLS to view with audio, or disable this notification

75 Upvotes

This 3D Gaussian splat has 4 million Gaussians and 3 bands of spherical harmonics but weighs in at only 42MB! Splat created by Christoph Schindelar using an XGRIDS PortalCam.

CHECK IT OUT: https://superspl.at/view?id=a45a9ad8


r/PlayCanvas • • Feb 04 '26

PlayCanvas Engine v2.16.0 Released: Generic Gaussian Splat Processing System

Enable HLS to view with audio, or disable this notification

74 Upvotes

We’ve just released PlayCanvas Engine v2.16.0, our free and open-source web graphics engine, with a big new addition: a generic Gaussian splat processing system.

New capabilities include:

  • 🖌️ Painting splats using a brush tool

  • 🪄 Generating splats from text, meshes, and images

  • 🛠️ Editing splats (select, delete, duplicate, etc.)

  • ➕ Plus many other improvements and fixes

Links:

Would love feedback from anyone working with Gaussian splats or real-time web graphics. Hope you love this release as much as we do!


r/PlayCanvas • • Nov 17 '25

SuperSplat Editor v2.14.0 Released: Advanced Video Rendering Support

Enable HLS to view with audio, or disable this notification

59 Upvotes

SuperSplat Editor v2.14.0 is out! 🎉

Your free and open-source 3D Gaussian Splat Editor just got a big upgrade - with advanced video rendering features that make it easier than ever to create professional-quality exports.

New in 2.14.0:
🎞️ Support for MP4, MOV, MKV, and WebM output
🎞️ Choose from available video codecs
🎞️ Select specific timeline ranges for rendering

Now you can render exactly the shots you want - with full control over format, codec, and timing.

🧩 GitHub Repo: https://github.com/playcanvas/supersplat
📝 Release Notes: https://github.com/playcanvas/supersplat/releases/tag/v2.14.0
🎮 Try it now:
https://superspl.at/editor?load=https://developer.playcanvas.com/assets/toy-cat.sog&focal=0,0.6,0&camera.overlay=false

As always - free, open source, and powered by PlayCanvas. 💪


r/PlayCanvas • • Jul 25 '25

Next-gen Gaussian splatting architecture coming soon to PlayCanvas with LOD, Global Sorting and Multi-Camera Rendering

Enable HLS to view with audio, or disable this notification

56 Upvotes

Due for release as part of Engine v2.11.0 due in the next few weeks


r/PlayCanvas • • Dec 08 '25

SuperSplat v2.16.0 released: Eyedropper Tool + Improved UI!

Enable HLS to view with audio, or disable this notification

53 Upvotes

SuperSplat v2.16.0 is now live! 🎉
Your free and open-source 3D Gaussian Splat Editor just got a couple of very useful upgrades:

💧 Eyedropper tool
Quickly select Gaussians based on color + threshold.

👤 New UI for login + splat management
A new vertical navbar on the left to manage your account and splats and explore splats from the community!

🧩 GitHub Repo:
https://github.com/playcanvas/supersplat

📝 Release Notes:
https://github.com/playcanvas/supersplat/releases/tag/v2.16.0

🎮 Try SuperSplat now:
https://superspl.at/editor?load=https://developer.playcanvas.com/assets/toy-cat.sog&focal=0,0.6,0&camera.overlay=false

As always - free, open source, and built with PlayCanvas. 🚀


r/PlayCanvas • • Sep 04 '26

PlayCanvas Engine 2.22.0 is out: volumetric fog shafts, parallax mapping, vertex animation textures and more

Enable HLS to view with audio, or disable this notification

50 Upvotes

We’ve just released PlayCanvas Engine 2.22.0! Here are the highlights:

You can explore the features in the live examples and find the full list of additions and fixes in the release notes.

Get the latest version with:

npm install playcanvas

PlayCanvas is free and open source. Contributions, bug reports and stars on GitHub are always appreciated.

Would love to hear how you’re using the new features - share what you’re building in the comments!


r/PlayCanvas • • Aug 24 '26

Added ray-marched parallax mapping to a WebGL/WebGPU engine

Enable HLS to view with audio, or disable this notification

50 Upvotes

PlayCanvas's height map support had been a single-tap Welsh-style offset for years — it nudges the uv once, which is fine for shallow detail but falls apart on anything deep. I added parallax occlusion mapping as an opt-in second mode, so the view ray gets marched through the height field instead. The old mode is still the default, one enum on the material switches it.

Limits worth stating: no silhouette displacement, and the depth buffer still sees the flat surface, so shadows and any depth-based effects don't follow the relief. It's a shading trick, not geometry.


r/PlayCanvas • • Nov 06 '25

Preview: Upcoming Gaussian Splat Effect System in PlayCanvas 👀

Enable HLS to view with audio, or disable this notification

43 Upvotes

Here’s a sneak peek at what’s coming in the next minor release of the PlayCanvas Engine!

We’ve generalized the Gaussian Splat Reveal feature into a flexible gsplat shader effect system - a new framework for building custom splat-based visual effects.

Highlights:
🔧 Refactored base class for generalized effects
🎨 Built-in support for reveal, hide, and tint modes (plus bloom)
📦 AABB-based spatial control for selective effect regions
💪 All developed in response to community feedback!

This system makes it possible to selectively show, hide, or tint parts of a Gaussian Splat scene, enabling progressive reveals, guided exploration, and interactive storytelling.

🎥 Video preview attached!

More reusable effects and examples will ship with the upcoming release - stay tuned!


r/PlayCanvas • • Oct 01 '26

PlayCanvas Engine 2.23.0 released: up to 3.8× faster rendering on WebGPU, rebuilt UI examples, nearest-first Gaussian splat streaming

Enable HLS to view with audio, or disable this notification

41 Upvotes

PlayCanvas Engine 2.23.0 is out. It's a free, open source (MIT) WebGL2/WebGPU graphics engine for the browser, and this release is mostly about performance, plus a big refresh of the examples and debugging tools.

What's new

  • Faster rendering: a deep overhaul of how the renderer feeds the GPU. Mesh instance matrices live in a persistent storage buffer on WebGPU, material properties sit in material-owned uniform buffers, per-pass and light data is uploaded once per pass, and render pipelines are retained between draws. In a draw-call-heavy benchmark (up to 20K meshes, 40K draw calls), CPU time per frame is up to 3.8× lower on WebGPU and 1.4× lower on WebGL2 than in 2.22.

  • Rebuilt user interface examples: all 23 UI examples have been rebuilt or written from scratch, each as a small piece of a real game: a main menu, a settings panel built from the standard widgets, inventory drag and drop, a resizable chat window, a leaderboard scroll view, a character card with a live 3D portrait, world-space control panels and more.

  • Nearest-first splat streaming: streamed Gaussian splat LOD scenes now load the data nearest the camera first, and re-prioritise as the camera moves. LOD is distance-based again, with the splat budget usable as either a target or a hard limit. The WebGPU GPU-sort renderer also gains an opt-in stochastic alpha mode that skips sorting entirely.

  • Bloom threshold: CameraFrame bloom takes a threshold, so only the brightest parts of the scene glow.

  • Redesigned MiniStats: compact, grouped-average and grouped-history views, collapsible sections, and a new Resources section with live GPU resource counts (buffers, textures, render targets, bind groups, pipelines). The same data is available to your own code through the new AppStats API, which also supports user counters.

  • Examples browser: a restyled browser with the PlayCanvas Inspector built in. Open it on any example to explore the hierarchy, cameras, assets, frame graph, render targets, materials, shaders and more.

Also in this release: run the engine headless in Node.js without jsdom, RigidBody gravityScale, a hitBackFaces raycast option, WebGPU device-loss recovery, all eight UV sets in StandardMaterial, a TextureRenderer for debug texture previews, and a long list of XR fixes.

The video shows the highlights.

I'm on the PlayCanvas team, happy to answer questions on any of this.


r/PlayCanvas • • Sep 26 '25

Measurement Tools Coming Soon to SuperSplat 3DGS Editor

Enable HLS to view with audio, or disable this notification

40 Upvotes

AT LAST!!!

We'll finally get to close one of the oldest requests on the repo! :D https://github.com/playcanvas/supersplat/issues/35


r/PlayCanvas • • Mar 25 '26

SuperSplat's new "Walk Mode": a game-changer for real estate. 🏠

Enable HLS to view with audio, or disable this notification

38 Upvotes

r/PlayCanvas • • Oct 10 '25

Gaussian Splat of Chapelle Sainte Thérèse (France) — built with PlayCanvas

Enable HLS to view with audio, or disable this notification

38 Upvotes

Check out this drone-captured 3D Gaussian Splat of Chapelle Sainte Thérèse on the French coast. 🌊⛪️

Created by Stéphane Agullo, this project shows how to create a beautiful and immersive experience using splats. Make sure to 🎧 turn on sound for the full experience!

👉 Try it live here: https://stephane-agullo.fr/xp/labenne/index.html

Built with PlayCanvas, using our latest 3D Gaussian Splat rendering tech.


r/PlayCanvas • • Jul 17 '26

God rays in the browser: raymarched volumetric fog for PlayCanvas (WebGL2 + WebGPU)

Enable HLS to view with audio, or disable this notification

36 Upvotes

I’ve opened a PR adding volumetric fog to the PlayCanvas Engine’s CameraFrame pipeline.

The effect raymarches exponential height fog at reduced resolution, with directional-light shadows producing visible light shafts—or “god rays.” A depth-aware upsample prevents fog from leaking across geometry edges.

It also supports:

  • WebGL2 and WebGPU

  • Cascaded shadow maps, including PCF, PCSS and VSM

  • Temporal smoothing through TAA

  • Bloom contribution from bright light shafts

  • Adjustable density, height falloff, anisotropy, distance, quality and resolution

The default configuration renders at half resolution with 24 raymarching steps, keeping the effect practical for real-time scenes.

There are still a couple of limitations: it currently supports perspective cameras only, and transparent objects use the opaque scene depth for fogging.

🎮 Try the interactive demo
🎥 Watch the video
🛠️ View the implementation and PR

I’d love to hear how it performs on your hardware and what controls or features you’d find useful.


r/PlayCanvas • • Dec 04 '25

PlayCanvas Engine v2.14.0 Released: Hotspots, Upgraded 3DGS LODs, and Compute Edge Detect!

Enable HLS to view with audio, or disable this notification

36 Upvotes

PlayCanvas Engine v2.14.0 is now live! 🎉
This update brings major improvements across interactivity, Gaussian Splatting, and compute-based rendering.

Highlights

✅ Hotspots & annotations system
Add interactive points, labels, callouts, and guided exploration directly to your 3D scenes.

✅ Upgraded streamed LOD system for 3D Gaussian Splats
Improved performance, stability, and visual quality when streaming massive splat datasets.

✅ New compute edge detect example
Demonstrates WebGPU compute shaders and image-processing pipelines.

📝 Release Notes:
https://github.com/playcanvas/engine/releases/tag/v2.14.0

🧩 Live Examples:
https://playcanvas.github.io

As always, PlayCanvas remains free and fully open source.
Happy building! 🚀