17 ms·
Babylon.js: JS framework for building 3D games with HTML5 and WebGL
- teamonkey 13y agoThis is a 3D renderer like three.js. Does anyone know how they compare?
- ilaksh 13y agoAs far as I can tell they copied the major features and concept of Three.js, added a few extra features, but implemented it in such a way that it is only performant in a specific version of Internet Explorer. In other words, embrace, extend, extinguish. I don't understand why people keep falling for this crap. Microsoft will do the best that it possibly can to disrupt WebGL with compatibility and other issues, just as it has always done with every key aspect of web technology. This li brary is the latest example. They could have easily made improvements to Three.js or some other existing library that was tested on other browsers but they did not. There are too many billions of dollars on the line. 3d gaming in the browser means the end of the Windows PC monopoly and Microsoft knows that whether the rest of you do or not. No I'm not exaggerating.
- nollidge 13y ago> it is only performant in a specific version of Internet Explorer Where does it say this? Demos work fine in Chrome for me, at least.
- ilaksh 13y agoLol.. if it really works fine in Chrome for most people then I will have to take back what I said at least as far as Babylon. Honestly I would like something like Three.us with collisions. I just really really don't trust these fuckers at this point and I don't see why they didn't expand an existing project. Is Babylon 100% open source?
- dirkk0 13y agoYes, it works great on Chrome. Regarding the missing collisions: ThreeJS focuses on the 3D part of a game engine only. If you want collisions, you need to add a physic engine. There's a couple of them out there - I would recommend CannonJS and there is a working ThreeJS FPS with WASD and collisions here: https://web3dblog.wordpress.com/2013/01/07/source-code-of-the-minimal-first-person-webgl-demo/ https://web3dblog.wordpress.com/2013/01/07/source-code-of-th...
- paultyng 13y agoIts on GitHub https://github.com/BabylonJS/Babylon.js https://github.com/BabylonJS/Babylon.js
- gamblor956 13y agoBabylon.js is based on the Babylon Toolkit for Silverlight, and includes significantly more features than Tree.js (not just a few), including sprite support and other 2d-graphics functionality. BTW...Babylon.js works in all 3 of the major browsers, and performs best in Firefox, not IE10.
- mrdoob2 13y agoI think competition is good. Soon after babilon.js got released I took a look at their file format and did a loader for three.js. This made me see how much three.js needed some geometry structure refactoring (moving towards a bunch of flat typearrays). I'm slowly working on that but I still need to find a nice API for it [1]. [1] https://github.com/mrdoob/three.js/issues/3672 https://github.com/mrdoob/three.js/issues/3672
- mrdoob2 13y ago*babylon.js
- nollidge 13y agoWould seem that at least particles, sprites, 2D layers, collisions, and dynamic textures are not in three.js. There's also mesh hierarchies, animations, and mirrors in Babylon.js, which I'm not sure if three.js supports those as first-class concepts or not. Syntax seems pretty similar, which is not terribly surprising.
- robeastham 13y agoAnd tonight was the night where I was going to figure out how to use my Oculus Rift with WebGL. This looks to have awesome potential. Well done!
- pfraze 13y agoJust in case you're still looking: https://github.com/benvanik/vr.js https://github.com/benvanik/vr.js
- muyuu 13y agoLink to the website of the project: http://www.babylonjs.com/ http://www.babylonjs.com/ You can see demos directly there.
- mistercow 13y agoThis is really awesome, and it seems like proper WebGL games are going to become a common reality soon. Chrome handles these samples very well, except for one thing which I think would be a major distraction for games: there's a ~1/sec stutter, which I assume is a GC pause. Google touts their stop-the-world GC as being ultra efficient and accurate, and in many ways it is. But I'm not sure that STW is an appropriate approach for games. The stutter has improved in recent updates, but it's still there. I wonder if they'll consider an alternative GC approach for situations involving continuous rendering.
- pygy_ 13y agoThe samples work fine is Firefox 22 too (30 to 60 FPS 1.8 GHz Core i5), without the pause you're describing.
- rl3 13y agoBabylon.js seems to have evolved from Babylon Toolkit, a 3D framework for Silverlight 5: http://babylontoolkit.codeplex.com/ http://babylontoolkit.codeplex.com/
- astrodust 13y agoLooks like the goals that inspired the quirky, far too limited VRML standard (http://en.wikipedia.org/wiki/VRML http://en.wikipedia.org/wiki/VRML) have finally been realized.
- swang 13y ago1. Microsoft 2. Not open source
- ks 13y agoIt is open sourced under Microsoft Public License: https://github.com/BabylonJS/Babylon.js https://github.com/BabylonJS/Babylon.js According to the Free Software Foundation, it is a free software license but not compatible with the GNU GPL.
- fhd2 13y ago> but not compatible with the GNU GPL. That doesn't mean much, the GPL (v3) is incompatible with itself (v2). Not a GPL hater, just pointing out that it's not a big deal for licenses to be incompatible with the GPL.
- swang 13y agoYes you're right about that, although this is only mentioned in the blog post, not the website. I'm also guessing this is open source the same way say Google open sources Android or Apple open sources Darwin.
- mtinkerhess 13y ago> Microsoft I don't see anything that says that this is a Microsoft product. It looks like a side project by a Microsoft employee. (full disclosure: I work at MS.) > Not open source Looks like the source code is available at https://github.com/BabylonJS/Babylon.js https://github.com/BabylonJS/Babylon.js under the "Microsoft Public License" which has been certified by the Open Source Initiative as an open source license.
- pixie_ 13y agoThis is just another technology connected with Microsoft that we should lament - right along with C#, Mono, Knockout, and TypeScript. Microsoft earned the ire of geeks everywhere in the 90s and it's a grudge many can't let go. Meanwhile you let Apple and Google steamroll you all by showing you what a real closed ecosystem monopoly really looks like. And you swallow it down because they do it all under the banner of 'open source.'
- _random_ 13y agoPeople wanted XNA 5, not yet another WebGL framework.
- seferphier 13y agoOculus Rift + Babylon.js = <3
- LekkoscPiwa 13y agoI don't do game development at all, so please take my comment with a grain of salt. How is this better than Flash/Flex/whatever Adobe has to play games? I mean waiting time is still there and I don't think Babylon.js works on all browsers the same (i.e. single code base for your game). Second question: if I want to develop a game to be played on browsers AND mobile (iOS + Android) and I'm a single developer, isn't Adobe my best bet?
- jiggy2011 13y agoWell, flash support on mobile is somewhere close to non existent and last time I checked the various flash 3D libraries (Away3d etc) the performance left something to be desired.
- ajselvig 13y agoYes, but you can export iOS and Android apps with Flash. The iOS browser still does not have support for WebGL.
- Tloewald 13y agoWell if you're a solo developer targeting browsers and mobile, I'd use Unity 3D (which went from supporting to abandoning Flash recently). It gets you browsers, desktop platforms, iOS, Android, Windows Mobile, PS3, XBox 360, and Wii -- not sure about the new Wii platform (does anyone care?).
- wmil 13y agoThe long term looks better on WebGL. And it's safer to bet your business on an open platform. Adobe actually announced that they would be charging royalties on 3d games developed with flash. They backed off after developers pushed back, but it really shows the danger of using an Adobe owned platform.
- SimHacker 13y agoFlash is dead. Adobe proved they weren't serious about flash when they announced licensing restrictions, 9% "revenue sharing" and hoops you have to jump through in order to use the "premium" 3d stuff. They eventually changed their mind about the 9% revenue tax after developers revolted, but the damage was done now that everyone knows they'd even think of doing something like that. And they drove the nail in the coffin (which Steve Jobs supplied), when they gave up on Flash for mobile. http://www.forbes.com/sites/ericsavitz/2011/11/09/adobe-to-stop-work-on-flash-for-mobile-browsers/ http://www.forbes.com/sites/ericsavitz/2011/11/09/adobe-to-s... "Flash Player 11.1 is the last release of the Flash Player plug-in for mobile browsers. Adobe will not add support for new mobile device configurations (chipset, browser, OS version, etc.). Adobe will continue to provide critical bug fixes and security updates for existing device configurations through September 2013, and will also allow our source-code licensees to continue working on and releasing their own implementations." http://www.adobe.com/devnet/flashplatform/whitepapers/roadmap.html http://www.adobe.com/devnet/flashplatform/whitepapers/roadma... There is no future for Flash. Adobe's all about HTML5 now, they don't give a shit about Flash any more, and neither should you. Unity3D went to great efforts to support Flash, and now they're sunsetting it, for good reason: Unity wrote on their blog: http://blogs.unity3d.com/2013/04/23/sunsetting-flash/ http://blogs.unity3d.com/2013/04/23/sunsetting-flash/ We don’t see Adobe being firmly committed to the future development of Flash. This is evidenced by the cancellation of Flash Player Next, the instability of recent Flash Player versions and by Adobe’s workforce moving on to work on other projects. By introducing, and then abandoning, a revenue sharing model, Adobe eroded developers’ (and our) trust in Flash as a dependable, continuously improving platform. Developers are moving away from Flash, and while Flash publishing has gotten little traction, our own Unity Web Player has seen unprecedented growth in recent months (now installed on over 200M computers and already installed by 1/3 of all Facebook gamers).
- Tloewald 13y agoThe kicker here is they've built a 3d workflow (i.e. OBJ and FBX support, and direct Blender export). This means that, unlike with almost any other option you don't start out needing to implement 3d import from scratch. On the down-side they do not appear to have implemented 3d animation yet. Assuming we can go from animated FBX to Babylon fairly seamlessly, this starts to look pretty useful. The next thing would be a halfway decent positional sound library.
- deltakosh 13y agoBlender export supports objects animations
- Tloewald 13y agoThey don't support bones yet, so this is probably straight transforms. We need bones and skeletal deformations.
- DanielRibeiro 13y agoThree.js has OBJ support natively (I've written a extension to allow you to view them directily on your github[1]). COLLADA and glTF, which provide support for animations, are also supported[2]. Cannon.js is a promising physics engine[3]. Nonetheless, it is exciting to see Microsoft not only supporting WebGL, but also promiting open source libraries to ease development on the platform. [1] https://github.com/danielribeiro/three-hub https://github.com/danielribeiro/three-hub [2] http://threejs.org/examples/webgl_loader_collada.html http://threejs.org/examples/webgl_loader_collada.html [3] http://cannonjs.org/ http://cannonjs.org/
- Tloewald 13y agoI tend to be dismissive of OBJ support since it's so easy to do and doesn't get you terribly far, but yes that's nice. Collada support is a lot more impressive, but FBX support -- even though FBX is proprietary -- is much more useful given the wider and broader support for FBX out there (even Blender can export to FBX).
- deleted 13y ago
- arxpoetica 13y ago"Sorry but your browser does not support WebGL..." Wait. What? Apple Mac OS X 10.7.5 Intel Chrome 28.0.1500.95
- arxpoetica 13y agoBAH. Apparently Chrome blacklists certain scenarios. Dumb.
- 3dev 13y ago"Please note that babylon.js use a left handed coordinate system" Thank you very much and please close the door when you leave the room.
- James_Duval 13y agoWhy's that so bad? A comment in this discussion (http://programmers.stackexchange.com/questions/17519/why-does-directx-use-a-left-handed-coordinate-system http://programmers.stackexchange.com/questions/17519/why-doe...) suggests that it is trivial to transform one system to the other.
- 3dev 13y agoIt's actually not that bad but OpenGL (and thus WebGL) is a right-handed system by default (It supports whatever system you want though). And right-handedness is also kind of a standard, think about cross-product, Counter Clock Wise direction, etc...
- EugeneOZ 13y agoBreathtaking! 120 FPS in all demos (because my video driver settings limit FPS to 120). Chrome, gtx680.
- davrous 13y agoPlease note that we've also worked on a companion framework named GameFX: http://blogs.msdn.com/b/davrous/archive/2013/07/23/introducing-babylon-gamefx-a-framework-to-build-html5-webgl-games-in-a-few-lines-of-code.aspx http://blogs.msdn.com/b/davrous/archive/2013/07/23/introduci... As Babylon.JS, it's open source, mostly done on our free time and works well on every platforms supporting WebGL such as Chrome, Firefox, Opera, Android, Firefox OS and of course IE11 (win 8.1/RT).
- deltakosh 13y agoVersion 1.2 is out :) [disclaimer: I'm the author^^] Major rework of the API to remove GC pressure New 3D charting demo