GaussianSplats3D, a Three.js Implementation of 3DGS

Mark Kellogg, a software engineer based out of Silicon Valley, had released GaussianSplats3D, a Three.js based renderer, late last year and has recently updated it.

Mark Kellogg, a software engineer based out of Silicon Valley, had released GaussianSplats3D, a Three.js based renderer, late last year and has recently updated it.

Michael Rubloff

Michael Rubloff

Michael is the Founder and Managing Editor of Radiancefields.com

GaussianSplats3D

Mark Kellogg, a software engineer based out of Silicon Valley, had released GaussianSplats3D, a Three.js based renderer, late last year and has recently updated it.

This update adds the ability to apply real-time transformations to splat scenes. Prior to this release, splat scenes could have a custom transformation applied when the scene was added to the viewer, after which the scene had to remain static.Mark KelloggTweet

GaussianSplats3D will work with either a .ply file, but will also work with a .splat or a .ksplat file. There have been lots of conversations surrounding what a universal file type for .splat would look like across late last year. .ksplat is another trimmed down and compressed method, but is one of Kellogg’s own creations. If you need a converter, Mark has also created a .PLY converter through his website.

The original inspiration for GaussianSplats3D stemmed from a desire to have gaussian splatting running natively on a web browser.

Of course since then we have also seen Luma AI announce the Luma Web Library, which also enables gaussian splatting on web. However, the big difference here is that you can train everything locally first (perhaps with nerfstudio) and then use the resulting .ply with three.js. GaussianSplats3D also comes with a full MIT license, so you can either build on top of it or deploy it as you need.

GaussianSplats3D’s entire rendering process is powered by Three.js, coupled with modern ECMAScript modules for an efficient and web-standard-compliant codebase. It also comes with custom octree for splat culling, WASM SIMD instructions for sorting, and partially GPU-accelerated splat sorting.

While GaussianSplats3D is versatile, it acknowledges certain limitations like CPU-based splat sorting leading to artifacts and sub-optimal mobile performance. Future enhancements aim to address these issues and expand capabilities, including WebXR compatibility and support for large-scale scenes.

An online demo showcases the project’s capabilities, complete with intuitive mouse and keyboard controls. For developers, the project offers detailed instructions for building from source, installing as an NPM package, and integrating into Three.js scenes.

Thumbnail for Gaussian Splatting News episode 12

11:38

Watch · New every Monday

Splats Come to Fortnite, Nike Shoots in 4D, Splats on a Nintendo 3DS

Episode 12 · Nov 9, 2026

Epic’s UEFN 43.00 brings Gaussian splats into the Unreal Editor for Fortnite, importing PLY and SPZ files that render on every platform UEFN supports, mobile included.

Featured

Recents

Platforms

World Labs Opens Atlas World Model to Everyone

World Labs has opened Atlas to everyone, launching Viewfinder, Chisel, Splats to Mesh and Relight alongside a developer API that outputs SPZ Gaussian splats.

Michael Rubloff

Nov 13, 2026

Platforms

World Labs Opens Atlas World Model to Everyone

World Labs has opened Atlas to everyone, launching Viewfinder, Chisel, Splats to Mesh and Relight alongside a developer API that outputs SPZ Gaussian splats.

Michael Rubloff

Platforms

OfflineTools' Frankensplat Trains Splats in the Browser

Frankensplat from OfflineTools trains Gaussian splats locally in the browser on WebGPU from images and a COLMAP reconstruction, with live PSNR and PLY export.

Michael Rubloff

Nov 13, 2026

Platforms

OfflineTools' Frankensplat Trains Splats in the Browser

Frankensplat from OfflineTools trains Gaussian splats locally in the browser on WebGPU from images and a COLMAP reconstruction, with live PSNR and PLY export.

Michael Rubloff

Platforms

Evergine Moves Gaussian Splat Processing to the GPU

Evergine's November 2026 release moves its Gaussian Splatting add-on to GPU compute shaders and adds PLY, SPZ, KSplat, LCC and LCC2 loading with auto-detection.

Michael Rubloff

Nov 12, 2026

Platforms

Evergine Moves Gaussian Splat Processing to the GPU

Evergine's November 2026 release moves its Gaussian Splatting add-on to GPU compute shaders and adds PLY, SPZ, KSplat, LCC and LCC2 loading with auto-detection.

Michael Rubloff

Platforms

Spirula Studio v2026.11.12 Adds Calibration Correction

Spirula Studio v2026.11.12 corrects rolling shutter and other camera calibration residuals during training and adds an experimental GLOMAP-style SfM mapper.

Michael Rubloff

Nov 12, 2026

Platforms

Spirula Studio v2026.11.12 Adds Calibration Correction

Spirula Studio v2026.11.12 corrects rolling shutter and other camera calibration residuals during training and adds an experimental GLOMAP-style SfM mapper.

Michael Rubloff

Trending Articles
  1. TRENDING
    Loading...
  2. TRENDING
    Loading...
  3. TRENDING
    Loading...
Michael Rubloff

Written by Michael Rubloff

Michael is the Founder and Managing Editor of Radiancefields.com

More from Michael Rubloff

More from Michael Rubloff

Platforms

World Labs Opens Atlas World Model to Everyone

World Labs has opened Atlas to everyone, launching Viewfinder, Chisel, Splats to Mesh and Relight alongside a developer API that outputs SPZ Gaussian splats.

Michael Rubloff

Nov 13, 2026

Atlas World Labs

Platforms

World Labs Opens Atlas World Model to Everyone

Michael Rubloff

Nov 13, 2026

Atlas World Labs

Platforms

World Labs Opens Atlas World Model to Everyone

World Labs has opened Atlas to everyone, launching Viewfinder, Chisel, Splats to Mesh and Relight alongside a developer API that outputs SPZ Gaussian splats.

Michael Rubloff

Nov 13, 2026

Atlas World Labs

Platforms

OfflineTools' Frankensplat Trains Splats in the Browser

Frankensplat from OfflineTools trains Gaussian splats locally in the browser on WebGPU from images and a COLMAP reconstruction, with live PSNR and PLY export.

Michael Rubloff

Nov 13, 2026

Frankensplat

Platforms

OfflineTools' Frankensplat Trains Splats in the Browser

Michael Rubloff

Nov 13, 2026

Frankensplat

Platforms

OfflineTools' Frankensplat Trains Splats in the Browser

Frankensplat from OfflineTools trains Gaussian splats locally in the browser on WebGPU from images and a COLMAP reconstruction, with live PSNR and PLY export.

Michael Rubloff

Nov 13, 2026

Frankensplat

Platforms

Evergine Moves Gaussian Splat Processing to the GPU

Evergine's November 2026 release moves its Gaussian Splatting add-on to GPU compute shaders and adds PLY, SPZ, KSplat, LCC and LCC2 loading with auto-detection.

Michael Rubloff

Nov 12, 2026

Evergine Gaussian Splatting

Platforms

Evergine Moves Gaussian Splat Processing to the GPU

Michael Rubloff

Nov 12, 2026

Evergine Gaussian Splatting

Platforms

Evergine Moves Gaussian Splat Processing to the GPU

Evergine's November 2026 release moves its Gaussian Splatting add-on to GPU compute shaders and adds PLY, SPZ, KSplat, LCC and LCC2 loading with auto-detection.

Michael Rubloff

Nov 12, 2026

Evergine Gaussian Splatting

New to Gaussian Splatting? Start here

Radiance fields, explained from the ground up: what a Gaussian splat is, how to capture one, and which tools and gear to start with.

Newsletter

Keep up with the field.

New research, tools and captures from the Radiance Fields newsroom, in your inbox. Free, no spam.

Gaussian Splatting News on YouTube

The week in radiance fields, every Monday.

Gaussian Splatting News on YouTube

The week in radiance fields, every Monday.

Gaussian Splatting News on YouTube

The week in radiance fields, every Monday.

Gaussian Splatting News on YouTube

The week in radiance fields, every Monday.