Announcing Babylon.js 9.0

Our mission is to construct one of the most powerful, beautiful, simple, and open web rendering engines globally. Today marks a significant milestone in that journey with the unveiling of Babylon.js 9.0.

Babylon.js 9.0 stands as our most extensive and feature-rich update to date, celebrating a year filled with innovative features, optimizations, and performance enhancements that redefine the possibilities of web development. From revolutionary lighting and particle systems to geospatial rendering, animation retargeting, and a completely revamped inspector, this release equips web developers with the tools to craft richer, more immersive experiences than ever before. Whether you are embarking on your Babylon journey or are a seasoned graphics expert managing 327 simultaneous AI agents, Babylon is designed with you in mind.

Before delving into the details, we extend our heartfelt gratitude to the vibrant community of developers, contributors, and advocates whose knowledge, expertise, and passion have been instrumental in shaping this platform. Babylon.js owes its success to your unwavering support.

Clustered Lighting

In scenes abundant with lights, per-pixel lighting calculations can become sluggish, as each pixel must compute contributions from every light source, regardless of their actual impact. The introduction of Clustered Lighting in Babylon.js 9.0 revolutionizes this process.

This new system accelerates lighting calculations by intelligently grouping lights into screen-space tiles and depth slices. Consequently, each pixel only computes lighting from the lights that genuinely affect it, resulting in scenes adorned with hundreds or even thousands of lights operating at remarkably smooth frame rates. This feature is compatible with both WebGPU and WebGL 2, ensuring next-generation lighting performance reaches the widest audience possible.

Check out a demo: Demo

Learn more: Documentation

Textured Area Lights

Building upon the Area Lights introduced in Babylon.js 8.0, we are excited to announce that area lights in Babylon.js 9.0 now support emission textures. This enhancement allows any image to serve as a light source for rectangular area lights, enabling effects such as stained glass projections, LED panel displays, or cinematic lighting setups, all while maintaining physically accurate light emission. An offline texture processing tool is also available for production workflows, alongside a runtime processing option for quick prototyping and experimentation.

Check out a demo: Demo

Learn more: Documentation

Node Particle Editor

We are thrilled to introduce the Node Particle Editor (NPE), a groundbreaking visual tool that allows users to create complex particle systems through a powerful, non-destructive node graph. If you are familiar with Babylon’s Node Material Editor, you will find the NPE intuitive and user-friendly. This tool grants complete control over every aspect of your particle systems, from emission shapes and sprite sheets to update behaviors and sub-emitters, all via an engaging drag-and-connect interface. Whether crafting simple smoke effects or intricate procedural fireworks, the Node Particle Editor makes the process enjoyable and visually stimulating.

Check out a demo: Demo

Learn more: Documentation

Particle Flow Maps and Attractors

For those seeking greater control over particle behavior, Babylon.js 9.0 introduces Flow Maps, a screen-aligned texture that dictates the direction and intensity of forces applied to particles based on their screen position. Each pixel in the flow map encodes a 3D direction vector and strength, providing fine-grained artistic control over particle movement. Flow maps are compatible with both CPU and GPU particle systems and integrate seamlessly with the new Node Particle Editor.

Additionally, the release incorporates gravity attractors into the particle system toolkit. An attractor allows users to define a position and strength, enabling particles to be drawn toward or pushed away from that point in space. With real-time repositioning and adjustment capabilities, creating dynamic, interactive particle effects such as swirling vortexes or explosion shockwaves becomes effortless.

Check out a demo: Demo

Learn more about Particle Flow Maps: Documentation

Learn more about Particle Attractors: Documentation

Volumetric Lighting

Realistic light shafts piercing through fog, dust, or haze can elevate a scene from ordinary to cinematic. Babylon.js 9.0 simplifies this process with a robust new Volumetric Lighting system.

The outcome is stunningly realistic light scattering, featuring configurable extinction and phase parameters that grant artistic control over light interaction with the atmosphere. The system supports directional light sources and fully utilizes WebGPU compute shaders for optimal performance, while also providing graceful fallbacks for WebGL 2. Whether designing a moody dungeon crawler or an atmospheric architectural visualization, Volumetric Lighting breathes life into your scenes.

Check out a demo: Demo

Learn more: Documentation

Frame Graph

One of the most transformative features in Babylon.js 9.0 is the Frame Graph system. Initially introduced as an alpha feature in version 8.0, the Frame Graph has now matured into a fully realized v1 feature, offering complete control over the rendering pipeline.

A Frame Graph is a Directed Acyclic Graph (DAG) where each node represents a rendering task, ranging from object culling to post-processing. Users declare the resources each task requires and produces, while the system intelligently manages texture allocation, reuse, and optimization. This leads to substantial GPU memory savings—often exceeding 40%—and a level of rendering flexibility previously unattainable. Users can visually customize and compose their rendering pipelines using the Node Render Graph Editor or programmatically through the class framework, eliminating the need for opaque render black boxes.

Check out a demo: Demo

Learn more: Documentation

Animation Retargeting

Animation retargeting is a game-changer for those involved in character animations. New to Babylon.js 9.0, the retargeting system enables users to apply animations created for one character to another, even if they possess different skeleton structures, bone proportions, or naming conventions. The system mathematically remaps each animated bone transform from the source skeleton to the target, compensating for variations in reference pose, bone length, and hierarchy. This innovation allows for the sharing of an entire library of locomotion, combat, or facial animations across diverse characters. An interactive Animation Retargeting Tool is also available for experimentation without the need for coding.

Check out a demo: Demo

Learn more: Documentation

Advanced Gaussian Splat Support

Having introduced Gaussian Splatting in Babylon.js 7.0, version 9.0 elevates this feature with a suite of advanced capabilities, including support for multiple file formats (.PLY, .splat, .SPZ, and Self-Organizing Gaussians .SOG/.SOGS), Triangular Splatting for opaque mesh-like rendering, shadow casting support, and the ability to combine multiple Gaussian Splat assets into a single scene with global splat sorting. Users can now programmatically create, modify, and download Gaussian Splat data, with each component of a composite splat scene being independently transformed and animated. This results in unprecedented flexibility for working with photorealistic volumetric captures on the web. Special thanks to Adobe for their invaluable contributions to advancing Gaussian Splat support!

Check out a demo: Demo

Learn more: Documentation

These features represent just a glimpse of what Babylon.js 9.0 has to offer—there is much more to discover. Stay tuned for future updates as we delve into tooling enhancements and new geospatial features.

Winsage
Announcing Babylon.js 9.0