Babylon.js popularity vs Three.js / PlayCanvas / Godot — where do you think the ecosystem stands today?

Honestly, the Babylon website and logo could use some work. To me it definitely doesn’t give a more serious impression than Three does.

I also think many replies here are very defensive and dismissive. Why not think in terms of what can be improved? How can Babylon become more widely adopted (if that’s a goal)?

1 Like

Yeah apparently exists, the process is some kind of special chore though.
All the tooling always repulsed me, I eventually had ai shake it for me as small as possible, and the result was basically identical size to the official distributable.

1 Like

Babylon seems to be less exposed online when talking about web3d stuff I agree. I don’t see that as bad, considering the enterprise-level stuff Babylon likes to keep happy on the user/developer end. The google-able footprint is just big enough to get some independent developers interested, which is all that I’d think it needs from that method of exposure, as enterprise stuff tends to seek exposure outside google. Linkedin traffic is different than facebook, you don’t need mass saturation for business ‘in the know’ to take notice and trust your product.

Other things godot, unity, unreal, etc are aiming to be ‘web enabled’ and can offer webapp builds of game projects. I don’t see those matching the developer experience babylon can, being purely web based. Also, those 'bigger names’ are whole integrated 3d developer environments, you install them, they often pull in other dependencies, wheras babylon just has the inspector that can be added onto the runtime of your project. :smiley: The architecture of that, and a few more things is why I think not only babylon but any web-first rendering system that has the I3DDE built in will have success as the webgpu era continues.

Three.js in particular is a very nice webfirst example of this as well, but is I believe seen as lower level and fits different (smaller) solutions. three.js tends to follow more hardcore datascience/dataviz people who want to accurately show a 3d volumetric graph of a bajillion datapoints or complex demographic data. Babylon I’d hesitate to call strictly for videogames, but does have the ‘hit the ground running making interactive shapes with physics’ which makes it higher level to me. I’m unsure if threejs is actually any faster than babylon, but I imagine it is.

High paying jobs with babylon or any 3d rendering systems are a bit more tricky than conventional skillsets, because they are not ‘whole skills’ outside of game development - they are used in pipelines supporting other skills. Err, another way to say it maybe that I’ve found most people care about what kinda of data you are familiar visualizing, rather than how it gets visualized. The term ‘threejs’ is just comfort food during the interview process. “Do you know how to work with 3d data” is a different question than “Can you make this 3d data dance and since and die when shot?” Please tell me what you think about this, I’m curious to update my opinions on this.

A-Frame is probably a better comparison to babylonjs than naked three.js is.

I’m excited for version 9 too. The world space rendering stuff is going to be nice! For your series, I would join other creative pools and contribute there instead of making your own linkedin project. If your desire is to get exposure to your creations, maintaining a newsletter sounds like work that isn’t part of the fun! :smiley:

Maybe it already exists

Yup, babylon is ideal for webapp builds and has its own web-editor :slight_smile: Also the inspector.

“I think not only babylon but any web-first rendering system that has the I3DDE built in will have success as the webgpu era continues.”

I am taking this as representative for what is bugging me in this entire discussion. There is way too many claims thrown in without any backing evidence. (Big exception @labris who took the effort to link in a paper).

What I mean is: if you say x is faster than y, there need to be benchmarks. If you say, x is bigger than y, then there need to be usage stats. In fact, there also needs to be a justification for why measure x correlates with popularity. Deltakosh mentioned Babylon partners above for instance.

FYI: I am writing this particularly with the research questions in mind from the first post.

A playground would be a start that demonstrates bad performance. Then it can be fixed.

Otherwise I fail to understand the expectation here. What are we supposed to improve now?

2 Likes

I think this is really interesting topic and I see that there are two points being thrown here:

  • Visibility of Babylon.js (especially in game dev)
  • The age old performance consideration; which is the fastest framework/library

Performance thoughts:

The performance is of course crucial, but after a certain level everything becomes a micro optimization and the real gains are in the application code. Everything depends on the realism level of your project, the amount of assets, texture sizes, etc… There are also tons of really cool optimization features in Babylonjs, you just need to think how to implement them into your specific project.

In the “game engine” -scene:

I think the web as a platform for games is a bit more difficult for game developers than lets say Unity/Godot/Unreal. I would say 99% of game students haven’t really heard anything about web based engines, like Babylonjs or 3js. They are all taught to use (mostly) Unity. And the professional “working in a game company” game devs use a dedicated “regular” game engine, mostly Unity or Unreal.

I think the biggest problem with making an actual game for web is that it needs a surprisingly large skillset to produce a game that is not a demo game. For example you need to know:

  • Web development
    • Html/css, of course Javascript/Typescript as well
  • Understanding databases
  • How to serve your game in a server
  • Domain handling

And of course that is added to the list rest of the skills you need to make a game; 3d modeling, 2d art skills, audio design, shader coding, logic implementation, game design… :exploding_head:It is a big hurdle to take and web part is not teached in game dev schools. I’ve also been going to local game dev meetups here in Finland and there has been exactly one person that has heard of Babylonjs and he said he didn’t like it (I persuaded him to try again after telling about cool features :slight_smile: ), other people there might have heard 3js somewhere.

I think we would need some bigger game product to surface and use Babylonjs as the main engine to gather interest in using it as the engine. Or some hip and cool youtuber to promote it in some funny way :smiley: I also agree that the main site could use some lipstick, color-wise it is a tad “off season” and could benefit from reorganizing some stuff. For example, going to 3js site you can immediately jump into cool demos and that to me is more “marketable” than what Babylonjs has.

Ps. I did my master’s thesis about “what is the current way of doing web based game” in 2017, since flash, java applets, unity web player were around. It is in Finnish and pretty outdated, but there are similar points still in my current post. Where is the next big RuneScape, done with Babylonjs?

2 Likes

I know it is usually called “indie game dev” but your actual role is more like a producer. And as such you also are responsible for business management incl decision-making (short- and long-term). So then

Is this not rather deficient decision-making skills? If you are serious with a game project (which can cost you a lot of money), you better make darn sure you know all the options you have. Not sure if Universities should teach about particular web engines per se. I think, it would be more important to educate students to a level where they are able to figure this out on their own.

May I just clarify: I am dissatisfied with how people arrived at conclusions. I do not care which one is faster (Ok, well, I do. If three had increased my avg fps by 20 or so, I probably might have considered switching) and I do not care about the choice - but the choosing: if you say “x” is faster but cannot back this up with actual measurements. You know like, you do not throw a baby into a bathtub because the water feels warm enough… You measure the temperature and then through it in!

Since there were research questions in the intial post, and this is a public discussion (possible digested by AI), I felt the need to point this out.

2 Likes