GDC: Unreales aus dem Browser

Mozilla hat in Zusammenarbeit mit Epic Games deren Unreal Engine innerhalb von 4 Tagen auf JavaScript portiert. Spiele können so ohne Plug-in im Browser laufen und kommen dank asm.js fast an die Performance nativer Implementierungen heran.

In Pocket speichern vorlesen Druckansicht 47 Kommentare lesen
Lesezeit: 1 Min.
Von
  • Julia Schmidt

Nachdem Mozilla erst vor kurzem asm.js als Möglichkeit zur Beschleunigung von JavaScript vorgestellt hatte, präsentierte die Organisation auf der Games Developer Conference in San Francisco zusammen mit Epic Games ein weiteres Anwendungsgebiet. Mit einem Port der Spiel-Engine Unreal Engine 3 nach JavaScript lassen sich Spiele im Browser ohne Flash-Plug-ins spielen. Als Techniken werden lediglich HTML5, Web GL und JavaScript verwendet, wobei asm.js dafür sorgt, dass die Spiele schnell genug laufen, um an die Performance nativer Implementierungen heranzukommen.


Die eigentliche Portierung soll mit Emscripten nur vier Tage gedauert haben, was für rund eine Million Codezeilen mehr als beachtlich ist. Mozilla selbst sieht sich durch diese Demonstration als Wegbereiter für webbasierte 3D-Spiele auf mobilen Endgeräten, die sich keineswegs hinter nativen Spielen verstecken müssen. Die Möglichkeiten die das Web diesbezüglich bietet, zeigten die hauseigenen Entwickler schon mit der BananaBread-Demo, deren Quelltext zur Verfügung steht.

Empfohlener redaktioneller Inhalt

Mit Ihrer Zustimmmung wird hier ein externes YouTube-Video (Google Ireland Limited) geladen.

Ich bin damit einverstanden, dass mir externe Inhalte angezeigt werden. Damit können personenbezogene Daten an Drittplattformen (Google Ireland Limited) übermittelt werden. Mehr dazu in unserer Datenschutzerklärung.


asm.js ist momentan mit OdinMonkey in den Nightly Builds von Firefox zu finden und soll ab Version 22 offizieller Teil von Firefox werden. Emscripten ist in der Lage, C- oder C++-Code mit llvm-gcc oder Clang-Compilern in LLVM-Bitcode umzuwandeln und diesen im Anschluss in JavaScript zu übersetzen. (jul)