Babylon 10

Babylon.js
2 min readApr 4, 2024

--

The first blog I wrote to announce Babylon.js availability was made on 6/27/2013. Yes, the engine is already 11 years old:). Almost a teenager. They grow so fast!

I found the link on archive.org for the curious.

Initial version of the site (on IE11!!)

Along all these years, we collectively built a fantastic engine alongside an utterly great and friendly community. Something I’m genuinely proud of. It’s fascinating to see how these projects around on the web are growing and expanding on Babylon.js in ways sometimes I might not have even imagined.

One of the promises I made ever since version 1.0 was that we will always protect backward compatibility. Raanan did a great work talking about why this is so important.

However, there are always two sides to the same coin. Protecting backward compatibility while improving performance or adding new features can be challenging and has forced us into some corners at times.

That’s why the team and I are thinking about breaking that promise. Yeah, I know this is a shock :) We are considering that maybe every 10 years or so we can allow us to clean the room a bit.

Here is the overall idea:

  • Codename is “Babylon 10”. Maybe it will happen for Babylon 10.0 but could be for 12.0 or any other version as we don’t know how long it will take.
  • There will be MAJOR breaking changes.
  • Every breaking change will be documented and associated with the before/after code to transition to the new API / feature / function. You will make sure to make the transition as easy as possible!
  • This will not happen again for at least 10 years

All of the breaking changes will be there for one or many of these goals:

  • Code cleanup (remove all these frenglish functions that made me laugh)
  • Removal of deprecated functions
  • Performance improvement (The engine was thought with WebGL in mind and we need to move to a WebGPU centric one)
  • Size improvement (we need to break some dependencies that were introduced in a time where “imports” was not even a thing in JS world)

That being said we will NOT do it if this faces a strong pushback from the community. We need to be sure that everyone will be behind the project as it will imply a lot of changes. So please chime in in our forum post and let us know what you think about this idea!

David ‘Deltakosh’ Catuhe
https://twitter.com/deltakosh

--

--

Babylon.js

Babylon.js: Powerful, Beautiful, Simple, Open — Web-Based 3D At Its Best. https://www.babylonjs.com/