
Babylon.js 3.0 - stablemap
https://blogs.windows.com/buildingapps/2017/07/12/announcing-babylon-js-3-0/
======
mohamedmansour
The impressive thing about Babylon.js is Spector
[http://spector.babylonjs.com/](http://spector.babylonjs.com/)

Babylon Spector is a fully functional WebGL debugger, it is an extension in
Chrome which makes 3D development on the web so much easier, works with
Three.js too!

------
kevinb7
After briefly testing on Mac OS:

\- Chrome ~60fps

\- Firefox ~25fps + fans spinning up

\- Safari (hangs on loading screen)

Many of the WebGL demos I try in Safari just don't work, but the demo doesn't
provide any kind of error message other than in the console. I have two
wishes:

\- Apple would get their act together with WebGL support

\- demos would handle WebGL errors more gracefully

~~~
graedus
I'll add my experience with the "PBR Glossy" demo:

Windows 8.1

Chrome: 144fps

Firefox: 144fps

IE11: 72fps

Not sure why IE11 is getting exactly half the framerate of the other two,
which are maxing at my monitor's refresh rate. At least none of them hanged or
crashed.

~~~
moron4hire
requestAnimationFrame is designed to animate on whole frame boundaries for the
monitor on which it is running, to avoid screen tearing. So if IE can't do
144hz, the next option is 72hz. You'll similar see 60hz displays running at
60, 30, or 15 FPS.

~~~
DiThi
The next one after 30 is 20 (one frame every 3 syncs).

~~~
moron4hire
If we want to be picky about it, the next one after 30 is "shut the app down,
tear it apart, and rewrite from scratch. Anything less than 30 is completely
unacceptable."

~~~
DiThi
It depends on the application. In one of my jobs for an educative platform I
automatically maintained it over 15 but under or at 30 (if it was over 30, it
improved quality).

------
tshannon
Only slightly on topic question, but are there a lot of webgl games out there,
or only demos? Any games I find are either toys or incredibly poorly
performing.

WebGL seems to mainly be used for demos.

~~~
chairmanwow
Purely speculation here, but I would think that devs would want to invest
their time in established gaming platforms with established customer bases.
Native applications with large amounts of engine / tooling built around them.

Again shooting from the hip here, but given the restricted environment of the
web browser, it would seem difficult to believe that you could make a high
performing full game given that you need to download THE ENTIRE GAME
essentially every single time you play, no? So that restricts the size /
complexity I would wager.

~~~
mikepurvis
I assume the idea would be to stream in the content as required, rather than a
giant upfront download, and maybe there'd be a way to prompt the user for a
LocalStorage limit bump so that you could put player models or other common
stuff in there?

Either way, in a world where people are regularly streaming Blu-ray quality
content over the internet, downloading a few 100MB per session doesn't seem
unreasonable.

~~~
tentaTherapist
You'd definitely be using IndexedDB, not LocalStorage for that.

------
ww520
Babylon.js is an amazing framework. The 3d concepts are ingrained into the API
and framework. The ability to read 3d model data from Blender and things just
work is awesome.

------
arnioxux
Can someone do a feature comparison between this and three.js?

~~~
viggity
three.js seems to be more well known/established than babylon and I had
initially picked that for playing around. However, I got to go to a session on
babylon at a microsoft conference and it was given by one of the authors and
was pretty impressed. I had a freelance contract that needed some webgl and
went with babylon and i'm glad i did. It better performance and the object
names and concepts seemed easier to follow and a little less obtuse. IIRC, the
presenter said that they are extremely diligent about working through bugs and
issues on github and that three.js had quite the backlog. It helps that
babylon is essentially being underwritten/subsidized by MS, where as three.js
is more your typical open source project.

If you've invested tons of time working in three.js, then it may not be worth
switching over. But if you're dabbling, it is definitely worth checking out.

However, all of this was about 2 years ago, and you never know what has
changed.

------
nnq
Not-so-on-topic question: although I see that Babylon is more of a 3D-engine
(like three.js) than a game engine, I see it has game-engine features too...
_How would it compare with a clear web-game-engine like playcanvas?_

Are people building webgl games actually using babylon?

~~~
anmorgan
I would actually say it is more of a game engine, especially when compared to
three.js. Babylon.js supports physics plug-ins and collisions. They also have
an action manager and other useful built in methods. Their tutorials are a
really good place to start:
[https://doc.babylonjs.com/tutorials](https://doc.babylonjs.com/tutorials)

Since babylon.js is more of a library, though, it doesn't have quite the tools
to that something like Unity has, but they have great documentation and
community support, and have a nice playground for testing small snippets. If
you find an issue and post a question in the forum, I've gotten a fix in a
matter of hours.

Note: User of babylon.js

------
evanwolf
Waiting for Babylon.js 5.0.

------
whatnotests
Even looks great on Mac OS + Chrome!

I hope this opens some doors...

