Nach Firefox haben jetzt zwei weitere Browser Unterstützung für die Unreal Engine 3 von Epic Games demonstrieren können: Auch die Entwicklerversionen von Chrome und Opera bestanden den webbasierten Test Epic Citadel. Interessant daran ist auch, dass sie anders als Firefox dabei nicht auf asm.js setzen.
Epic Games hat daher jetzt Chrome 31 und Opera 18 zur Liste der Browser hinzugefügt, die Unreal Engine 3 unterstützen. Anerkennende Worte gibt es auch von Mozillas für Spiele zuständigem Produktmanager Martin Best in einem Blogbeitrag. Die drei Browserhersteller können damit als Wegbereiter gelten für anspruchsvolle, plattformübergreifend im Browser laufende Anwendungen und natürlich vor allem Spiele.
Die Demo enthält 3D-Grafiken mit 2D-Texturen, wehende Blätter, fließendes Wasser, spiegelnde Steinböden, Blendenflecken, Schatten und andere Lichteffekte. Mozilla und Epic hatten die für eine Webtechnik äußerst komplexe Lösung schon im März vorgestellt. Sie nutzten Mozillas Emscripten, das in C oder C++ geschriebene Software in JavaScript übersetzt, und asm.js, das ein Subset von JavaScript durch Kompilierung schneller als gewöhnlich ausführen kann.
Der Trick hinter Mozillas asm.js besteht darin, Code vorab (Ahead-Of-Time, kurz AOT) in Maschinensprache zu kompilieren. Dies veranlassen Web-Apps mit der Anweisung „use asm“. Chrome und Opera dagegen, die ja beide die gleiche Browserengine einsetzen, nutzen statt asm.js lieber eigene JavaScript-Technik, nämlich eine Just-In-Time-Kompilierung (JIT), die in Googles JavaScript-Engine V8 steckt. Ein Browser mit JIT kompiliert JavaScript, überwacht die Ausführung und führt je nach Bedarf weitere Kompilierungen durch. Über die nötige Unterstützung des 3D-Grafikstandards WebGL verfügen beide Browser ohnehin.
„Die V8-Leute wollen offenbar lieber die JIT-Optimierung vorantreiben, statt ‚use asm‘ auszuführen“, kommentiert Mozillas Chief Technology Officer Brendan Eich. „Ja, das machen sie gut. V8 ist eine hervorragende virtuelle Maschine für JIT.“ Er sei aber dennoch nicht sicher, ob die Leistung je die von AOT erreichen werde. Seiner Erfahrung nach setze Unreal Engine 3 unter Chrome öfter aus, was durch Rekompilierung bedingt sei.
Bei einem Testlauf von News.com auf einem Macbook Pro 2012 mit Retina-Display war es allerdings Chrome, der im Vergleich mit Firefox die höhere Framerate lieferte: Firefox Nightly 28.0a1 vom 26. November kam auf 52,4 fps, Chrome 33.0.1712.4-dev aber auf 59,8 fps.
[mit Material von Stephen Shankland, News.com]
Tipp: Wie gut kennen Sie sich mit Browsern aus? Testen Sie Ihr Wissen – mit dem Quiz auf silicon.de.
Der Cybersecurity Report von Hornetsecurity stuft 2,3 Prozent der Inhalte gar als bösartig ein. Die…
Die Hintermänner haben es auf Zugangsdaten zu Microsoft Azure abgesehen. Die Kampagne ist bis mindestens…
Cloud-Plattform für elektronische Beschaffungsprozesse mit automatisierter Abwicklung elektronischer Rechnungen.
Mindestens eine Schwachstelle erlaubt eine Remotecodeausführung. Dem Entdecker zahlt Google eine besonders hohe Belohnung von…
Nur rund die Hälfte schaltet während der Feiertage komplett vom Job ab. Die anderen sind…
Security-Experten von Check Point sind einer neuen Angriffsart auf die Spur gekommen, die E-Mail-Schutzmaßnahmen umgehen…