
Babylon.js
Babylon.js is an open source WebGL2 and WebGPU rendering engine that loads and renders Gaussian splats natively in the browser.
Location
Size
Total raised
Hiring?
Platform
Web (WebGL2 / WebGPU), TypeScript and JavaScript library via npm or CDN
GPU
None published. Rendering runs in the browser, so a WebGL2 class GPU is the floor and WebGPU is used where the browser exposes it. Babylon.js does not train splats, so no training GPU is required
Pricing
Free. Apache 2.0 open source, no paid tier
License
Apache 2.0
Best for
Rendering Gaussian splats in web and WebXR applications
Updated
July 2026
Babylon.js is an open source real time rendering engine for the web, first pushed to GitHub in June 2013 and developed since under the BabylonJS organization. Microsoft publishes the engine and announces each major version on its Windows Developer Blog, and the source ships under the Apache License 2.0. The engine is written in TypeScript and distributed on npm as a UMD bundle under the babylonjs package and as tree shakeable ES6 packages under the @babylonjs scope, with a CDN build for prototyping. Version 9.20.0 is the current npm release, published on August 6, 2026.
Gaussian splatting arrived in the engine at version 7.0 and has been extended in every major release since. Babylon.js added Niantic's compressed SPZ format at the start of 2025, and version 8.0 followed that March with further work on the splat pipeline alongside a new lightweight Viewer that embeds a scene in a page with a few lines of HTML.
Version 9.0 shipped on March 26, 2026 and rebuilt the splat feature set. The loaders read PLY, the typed array .splat serialization, Niantic's SPZ and Self Organizing Gaussians in both SOG and SOGS form, and triangular meshes stored in PLY feed a Triangular Splatting path that produces opaque geometry usable like a regular mesh. Splats cast shadows through the standard ShadowGenerator once transparency shadows are switched on. Multiple captures combine into one scene through the addPart method while keeping a single global sort order, each part carries its own visibility value and transform, and removePart takes parts back out. Splat data is also readable and writable in memory through updateData, so scenes can be generated, modified and downloaded from the browser. Adobe contributed to the release.
Version 9.1 arrived on April 2, 2026 and turned to tuning. Downsampled spherical harmonics generation lets developers trade view dependent color against memory, and runtime spherical harmonic degree control moves that lever to the frame. The same release corrected a coordinate flip when the Viewer loaded SPZ files, removed a quadratic time regression in addPart, and stopped the Viewer from enabling screen space ambient occlusion by default on scenes made entirely of splats, where it produced dark halos.
Because splats carry no triangle geometry, ray based picking falls back to bounding volume intersection, so accurate selection runs through the GPUPicker class, and the proxy meshes returned by addPart can be handed to its picking list. GaussianSplattingMaterial accepts custom vertex and fragment code through the standard Babylon.js material plugin system. An experimental GaussianSplattingStream class streams very large captures from a PlayCanvas style lod-meta.json bundle, pulling an octree of chunks at the level of detail the camera needs, under a configurable memory budget with eviction of chunks that have gone unused, and it runs on both WebGL2 and WebGPU.
Hardware requirements come from the browser rather than from a published specification. Babylon.js targets WebGL2 and WebGPU, the splat path works on both, and the engine trains nothing locally, so a capture produced elsewhere is all that is needed to render. The library is free with no paid tier, no seat license and no runtime royalty. Production deployments of the wider engine listed by the project include Nike By You, the Xbox Design Lab, Minecraft Classic, Temple Run 2 and product configurators for Lowe's, Macy's and Volkswagen.
Frequently Asked Questions
Does Babylon.js support Gaussian splatting?
Babylon.js has supported Gaussian splatting since version 7.0 and reads PLY, the typed array .splat serialization, Niantic's compressed SPZ and Self Organizing Gaussians in SOG and SOGS form through its standard mesh loaders.
Is Babylon.js free?
Babylon.js is free and open source under the Apache License 2.0. There is no paid tier, no seat license and no runtime royalty, and the engine is distributed on npm and from a public CDN.
What GPU is needed to view Gaussian splats in Babylon.js?
Babylon.js publishes no minimum GPU. The engine renders in the browser, so any WebGL2 class GPU will display splats and WebGPU is used where the browser exposes it. Babylon.js does not train splats, so no training GPU is required.
Can Gaussian splats cast shadows in Babylon.js?
Gaussian splats cast shadows in Babylon.js from version 9.0 onward. Because splats render with alpha blending, the ShadowGenerator has to be created with transparency shadows enabled before splat geometry contributes to a shadow map.
Is Babylon.js a Microsoft project?
Babylon.js is developed in the open on GitHub under the BabylonJS organization and published by Microsoft, which announces each major version on its Windows Developer Blog. Outside contributors work on it as well, including Adobe, which contributed to the Gaussian splat work in version 9.0.

