A-Frame is here.

August 28, 2016

If you approach the 3D capabilities of the open web browser world, you usually go via the ThreeJS Framework (like I did in my multidevice demos).

But now there’s A-Frame and it takes a different approach, quote:

“A-Frame is an open-source framework for easily creating WebVR experiences with HTML. It is designed and maintained by the Mozilla VR team (MozVR). A-Frame wraps three.js and WebGL in HTML custom elements. This enables web developers, designers, and artists to create 3D/VR scenes without having to learn WebGL’s complex low-level API. Because WebGL is ubiquitous in modern browsers on desktop and mobile, A-Frame experiences work across desktop, iOS, Android, and Oculus Rift headsets.” (link)


So it does mainly two things: it abstracts WebGL in an HTML-like way that appeals to everyone and not only developers, and additionally it bridges between high-end VR goggles like Rift and Vive and cheapo Cardboard knock-offs. This is great news for the open web. Oh, and it also has ThreeJS under the hood.

Having the luxury to be able to operate both ends of the spectrum, I can tell you that it’s not easy to develop and debug VR applications even if you can afford an Oculus Rift. Mostly you are in a Unity development loop and simply installing new drivers can cost you days and days. Of course, there are alternatives like Unreal Engine 4, but it is great news that the VR extensions will be implemented into the major browsers.

I took a good look at A-Frame for the last days, and I think it’s on the brink of hitting prime time. I still have to figure out the details behind the community driving this, but it’s another initiative from Mozilla (from Mozilla’s VR Team, MozVR, to be precise) with Kevin Ngo being one of the main actors. But not surprisingly you find also Googlers among their ranks, for example Don McCurdy, who brought the excellent CannonJS physics engine into the game.

Because that’s one of the advantages of A-Frame: it’s Entity-Component-System makes it extremely easy to create and re-use components. There is even support for the Leap Motion already. And that’s the main difference between A-Frame and other 3D markup languages.

There is a ton of examples out there – of varying quality, I have to say. But let’s not forget: this is uncharted terrain; we don’t even know how to create proper user interfaces for VR.

I was working on a successor of my demo directly in ThreeJS, but it might be more effective to jump on the A-Frame bandwagon.

What keeps you? Here is a starting point.

Multiplayer and synchronized viewport demo

September 21, 2014

Not too many posts here recently, I know.

But I wanted to let you know that I created a small prototype that shows how to create a multiplayer and synchronized viewport demo and opened the source.

New kid on the block: Babylon.js

August 12, 2013

New kid on the block: Babylon.js

There is a new JavaScript framework called ‘Babylon.js’ by David Catuhe which is the first one for some time that does not rely on Three.JS.

I didn’t have time to play with it yet, but it looks awesome.

Check out the demos on the website!

It is open source under a Microsoft license and the first major contribution from MS to the WebGL community that I know of. Kudos to David and Microsoft!

So you want to be a Browser Game Developer? (about Turbulenz and other engines)

May 9, 2013

…an HTML5/CSS3/JavaScript Game Developer, that is?

Turns out you have various choices to proceed.

0) Develop your own JavaScript game engine – NOT. There’s a plethora of game engines out there already. I checked a couple of them out today and even if you choose to develop your own, be aware there might be one out there that very well suits your needs. There’s a comprehensive list here and if something is missing you can add it there like I did today.

1) Try to avoid JavaScript altogether (I wouldn’t blame you), use an existing C/C++ game engine and compile it with Emscripten. I covered Emscripten before and if you are into C/C++ programming already, this might be the way to go – especially if you want to avoid a programming language that was developed in ten days.

2) Use Turbulenz which went open source this week. From my experiments today it’s a game engine done right – it has a building tools (written in python – yay!), it has tons of features and (gasp!) loads of documentation. The thing that bought me was the fact that I had no problems to install and run it and especially the impressive performance of  this Quake 4 asset import:

3) If options 1 to 2 are too heavy then – again – I recommend to check out the list that I mentioned above. The library I intend to check out is the iio engine (that’s the one I added) and I also intend to write tutorials on using it in the near future aimed at people starting out on JavaScript games (if you are interested, leave a comment).

4) If you just want to start without any installation – the Pixieengine is an online IDE (editor) and you can develop right away from inside your browser (and export it or embed an iframe if the environment allows it).

So get out there and roll the bones!

Pixelpark Islands leaving Second Life

March 15, 2013

TL;DR: German company Pixelpark is leaving SL.

Mit grossem Bedauern muss ich mitteilen, dass Pixelpark (mein Arbeitgeber) Second Life verlässt.
Das Bedauern bezieht sich nicht auf die Entscheidung per se – diese ist betriebswirtschaftlich gar nicht anders zu verantworten – sondern auf die Konsequenz die das haben wird: eine der aktivsten, positivsten Communities im deutschsprachigen Second Life – die Deutschen Mentoren – wird damit heimatlos und muss sich ergo auflösen.
Pixelpark hatte die Ehre von den Deutschen Mentoren betreut zu werden, und alles was die Sims so grossartig gemacht hat, ist durch diese Menschen erzeugt und kuratiert worden. Die Gruppe löst sich jetzt leider auf.
Mir war, ist und bleibt unklar, warum Linden Lab den Niedergang des eigenen Universums ignoriert
(am besten dokumentiert hier: http://nwn.blogs.com/nwn/2013/03/why-losing-second-life-sims-matters.html) aber mein Gefühl ist: auch Linden Lab hat SL eigentlich schon verlassen.
Aber vielleicht gibt es ja noch eine Alternative? Wer an Second Life glaubt, hat jetzt die Möglichkeit, die Sims zu übernehmen.

BKL and the minecraft effect

January 18, 2013

I am speechless.

Somebody on Hacker News just posted A Minecraft-like Block Based Game Engine Using Three.js, WebGL and Node (badassjs.com).

This is already cool.

But in the comments somebody else promoted BLK – a project from Ben Vanik – a Google employee – who created BKL in his 20% Google spare time.

I set up a server on Amazon EC2, and the t1.micro instance was seconds ago populated by people – building things.

The Minecraft effect is incredible.

[EDIT] link to the main page is here.

Bildschirmfoto 2013-01-18 um 21.38.55 Bildschirmfoto 2013-01-18 um 21.29.20 Bildschirmfoto 2013-01-18 um 21.12.50 Bildschirmfoto 2013-01-18 um 21.11.39 Bildschirmfoto 2013-01-18 um 21.11.12

Source code of the minimal first person webGL demo

January 7, 2013

I forgot to mention that I uploaded the sources to the minimal FPS that I mentioned in my last postTowards open game engines in the browser‘. Hopefully this gives a head start to someone who wants to combine 3D (Three.JS), physics (Cannon.JS)  and first person controls.

You can find the repository on Github.

Bildschirmfoto 2013-01-07 um 17.38.49