Content longevity and backward compatibility

TL;DR - Babylon.js is frick’n awesome for many reasons, but backward compatibility and the promise of content longevity may be the most underrated and important reasons of all.

I started off in VRML & X3D, both ISO standards for 3D on the web starting in the mid 1990s. Yes, I’m old. For its time it was groundbreaking technology and we created some awesome stuff with it, despite the hardware and software constraints back then. These days most people (apart from some die hards still using it in science and academia) think of it as little more than a crusty old legacy 3D file interchange format, but it was indeed capable of much more, making it a full, rich web 3D authoring powerhouse.

Out of nostalgia, I decided to fire up some of my old work today and found most of it was irreparably broken, even when viewed in the latest vender-specific VRML/X3D browser that it was built for. Now some of the stated aims of VRML as an ISO standard were cross-engine compatibility, no vendor lock-in and content longevity, but alas that hasn’t really been the case unless creators completely avoided new “standardised” features and vender-specific extensions, and even then, bleeding edge content of the time no longer runs as intended even on the right flavour of VRML/X3D engine because engine makers, if they still exist at all, haven’t been diligent about maintaining backwards compatibility. I know nothing is truly “forever” but this is disappointing - that’s a lot of great content and a significant chunk of internet history that is largely now lost to the world. This is not me criticising or hating on VRML, far from it - I love what it was, still is for some and most importantly, the lofty goals it represents.

It just makes me appreciate even more that, with Babylon.js, I can bundle up the engine with my own code and it’s a fixed snapshot in time, so theoretically that work should last. Even if I choose to use the Babylon.js CDN or target the latest preview release, the devs focus on maintaining backwards compatibility gives me a great deal of confidence that my work will stand the test of time.

There’s a lot to love about Babylon.js but I just wanted to emphasise these underrated and rarely considered or discussed factors.

Babylon.js devs … I salute you :vulcan_salute:

11 Likes

This is 100% a point of pride for the boss @Deltakosh

I also love it.

1 Like

OMG thanks a lot for your feedback.

You have NO idea how hard I fought to impose that idea (which is the core of my philosophy: simplicity and backward compat). I know it is a challenging position to maintain but when I read this kind of feedback I know it was worth it!!

Thanks a ton!

4 Likes

@inteja we have both been around a long time. I started VRML with a bouncing ball and never looked back. I used CosmoPlayer, then Blaxxun Contact so that I could build worlds for meeting people. I knew 3 people from Oz in those days - one around Sydney, one in Northern Australia and One in Western Australia.

I moved on from VRML to Unity and Second Life - I built a Second Life world for UWA . The latter got me using Blender (there was a plugin to build with SL objects then export). Then I came to Babylon JS - “The Blue Lady” - that was April 2014. It seems like a long time ago.

Every thing still runs fine - @Deltakosh has done a fine job with backwards compatibility

And of course I still use blender and @JCPalmer 's exporter which he keeps up to date too.

I remember there was a VRML viewer called “Worldview” which was not great, and Microsoft bought it and it died. By a strange coincidence, the guy who sold it to Microsoft now seems to be connected with the Khronos stuff, which is why I stick to .babylon!

Microsoft also bought TrueSpace 3d modeler - and it died too. I appreciate what DK does even more.

Stay Safe All , gryff :slight_smile:

2 Likes

@gryff yes sounds similar to my experience - I used SGI CosmoPlayer & CosmoWorlds until they sold out to Computer Associates and those great products died. Then ParallelGraphics Cortona and Blaxxun Contact, then I worked for Bitmanagement (Contact) for a few years. I didn’t have much to do with Intervista WorldView but yes I recall that was Tony Parisi’s company that he sold to Microsoft, the tech made its way into IE and some early Xbox UI stuff and now I think he’s head of AR/VR or some such at Unity. Interesting times.

I can’t find a link but there was an article I read a while back about the fascinating history of VR, and a lot of those early pioneers and companies emerged as a result of Burning Man, Timothy Leary and the psychedelics scene and sci-fi concepts from authors like Neal Stephenson (metaverse) and William Gibson (cyberspace) etc. VRML was the first serious attempt to bring these ideas to life. I’ve heard it said that Silicon Valley wouldn’t be what it is today without the influence of psychedelics :crazy_face:

The other huge change has been the growth of open source. Back in the day everyone, even companies working with an open ISO standard like VRML, were so concerned about protecting their own IP, protecting and growing their turf, that virtually nothing of any merit was open source. These days all the best stuff is open source, it’s easy to contribute and companies have found other business models that work. This has been great to see.

@Deltakosh glad you fought hard to instil the culture of simplicity and backwards compatibility. It was actually the latter that enticed me to Babylon.js as I had found THREE.js first and invested significant time in it, but I got frustrated with everything breaking (including the official docs demos) each time there was a new release. That situation may have stabilised now, I don’t know.

Anyway, less talk - I have to actually finish my Babylon.js project(s) rather than reminiscing about the good 'ol days :wink:

2 Likes

Are there any plans to include X3D as a compatible file format for Babylon.js? Ideally, I could drag-and-drop an X3D on https://sandbox.babylonjs.com and it would just load.