Mozilla i Epic Games chwalą się przeniesieniem silnika Unreal na Firefoksa: już wiemy, po co był asm.js

Mozilla i Epic Games chwalą się przeniesieniem silnika Unreal na Firefoksa: już wiemy, po co był asm.js

28.03.2013 12:23

Trend przekształcania przeglądarek w konsole do gier jakoś niechce przeminąć. Z jednej strony Google stara się pozyskiwaćkolejnych wydawców, którzy zainteresowani byliby przenoszeniemswoich tytułów na wbudowanego w Chrome Native Clienta –środowisko uruchomieniowe dla kodu natywnego, z drugiej Mozilla robico może, by zwiększyć wydajność standardowych technologiiwebowych i przedstawićFirefoksa jako idealną platformę dla komputerowej rozrywki.Każdy z tych sposobów ma swojeplusy, każdy ma i minusy. Rozwiązanie Mozilli na pewno jednakbardziej musi podobać się webowej społeczności, tak bardzoceniącej otwarte standardy i technologiczną neutralność. A co,jeśli nagle standardowe technologie Mozilli przestałyby być takinteroperacyjne, jak dotąd? Gdyby wymagające aplikacje pisane naFirefoksa nie działały już na innych przeglądarkach?[img=unreal]To nie jest tylko gdybane. Odniedawna Mozilla pracuje nad technologiąasm.js – podzbiorem JavaScriptu, do którego można kompilowaćkod C/C++. Powstały w ten sposób kod można uruchomić na dowolnejprzeglądarce zgodnej ze standardem ECMAScript, jednak będzie ondziałał bardzo powoli, bez jakichkolwiek optymalizacji – chyba żezostanie uruchomiony na specjalnym silniku JavaScriptu, zawierającymobsługę optymalizacji asm.js. Taki właśnie silnik Mozillapokazała przy okazji premiery Firefoksa 22 w kanale wydawniczymNightly: OdinMonkey pozwala uruchamiać skompilowane do asm.jsoprogramowanie z szybkością bliską natywnej (obecnie z narzutemrzędu 60 proc. – dla porównania, narzut dla kodu uruchamianego naniezoptymalizowanym silniku, takim jak V8 w Chrome, wynosi 600proc.).Oczywiście Mozilla zapewnia, żekażdy producent przeglądarek może wprowadzić optymalizacje dlaasm.js do swojego silnika skryptowego – i nie jest to wcaleniezgodne z prawdą. To samo jednak twierdziło Google, prezentującNative Clienta, miała to być wtyczka dostępna dla każdego, kto doprzeglądarki wprowadziłby nowy interfejs wtyczek PPAPI (Pepper),następcę standardowego NPAPI. Dziś Native Client działa tylko wChrome – i raczej ta sytuacja nigdy nie ulegnie zmianie.Asm.js niewiele by było warte,gdyby było tylko eksperymentem. Jednak tym razem Mozilla znalazłapoważnego partnera. Ludzie ze znanego chyba każdemu graczowi EpicGames współpracowali z programistami Firefoksa nad przeniesieniemsilnika Unreal Engine 3 na asm.js, i podobno zajęło im to zaledwiecztery dni. Jak czytamy w komunikacie prasowym, pozwoli towkrótce deweloperom na eksplorowanie nieograniczonych możliwości wkwestii przenoszenia popularnych gier na Web.Mimo tych deklaracji, niedostaliśmy działającego na asm.js dema Unreal Engine. Pokazane mabyć ono za kilka tygodni. Na razie wystarczyć ma poniższe wideo,oraz zapowiedź współpracy z wydawcami takimi jak Disney,Electronic Arts i ZeptoLab. [yt=http://www.youtube.com/watch?v=XsyogXtyU9o]Wydaje się nam jednak, żeMozilla w tym wszystkim zapomniała o jednej rzeczy. Gry to nie tylkoszybko działający silnik. Gry to gigabajty tekstur i modeli, klipywideo i wysokiej jakości dźwięk. Kupując grę na konsolę czy PC,gracz to wszystko dostaje na nośniku optycznym – by rozpocząćgrę wystarczy trwająca kilka minut instalacja, później już możnagrać praktycznie od razu. Gdyby ktoś teraz chciał zagrać wtakiego Assasins Creeda, Uncharted czy Bioshock Infinite wprzeglądarce, musiałby czekać całe godziny, aż te wszystkie danegry się pobiorą z Sieci – i prawdopodobnie tak byłoby za każdymrazem: technologie HTML5 pozwalające przechowywać dane aplikacjiwebowych lokalnie, w przeglądarce, nie były opracowywane z myśląo przechowywaniu gigabajtów danych graficznych.

Źródło artykułu:www.dobreprogramy.pl
Oceń jakość naszego artykułuTwoja opinia pozwala nam tworzyć lepsze treści.
Wybrane dla Ciebie
Komentarze (14)