HTML5 technologią gier przyszłości?
W Warszawie miała miejsce pierwsze w świecie konferencja poświęcona tworzeniu gier uruchamianych w przeglądarce internetowej - onGameStart.
23.09.2011 | aktual.: 15.01.2016 15:43
300 uczestników, w 3/4 z zagranicy przysłuchiwało się rozmaitym prezentacjom poświęconych tworzeniu gier, w które możemy zagrać w nowoczesnej przeglądarce, na każdym urządzeniu, na którym taką przeglądarkę można uruchomić. Na komputerze, na tablecie, czy na nowoczesnym smartfonie.
Graj wszędzie Niby nic specjalnego, bo przecież na tych wszystkich platformach można grać w gry. HTML5 w połączeniu z JavaScriptem ma jedną kolosalną zaletę - jest to standard, w teorii, działający tak samo na wszystkich platformach ten standard wspierających. Dzięki temu gra stworzona w HTML5 i JS pozwala nam w łatwy sposób zaoferować grę na bardzo szerokiej gamie urządzeń.
Nie zapominajmy, że gry to nie tylko rozrywka. Nieoczekiwaną stroną tworzenia gier w HTML5 pokazał Ryo Shimizu z Japonii w najlepszej prezentacji konferencji. Tragiczne wydarzenia związane z trzęsieniem ziemi w Japonii zmusiły dorosłych to zapewnienia jakiegoś produktywnego zajęcia dla młodzieży w czasie, gdy kraj podnosił się z gruzów. Okazało się, że doskonały sposobem może być tworzenie gier na bazie prostej biblioteki enchant.js stworzonej w firmie Japończyka tuż po trzęsieniu ziemi, a która pozwala innym tworzyć bardzo łatwo gierki działające w przeglądarce i zaktywować olbrzymi potencjał kreatywny nie tylko dzieci, ale także rodziców. Ryo Shimizu regularnie organizuje konkursy i warsztaty, podczas których uczestnicy łatwo i szybko tworzą setki rozmaitych gier, prezentowane na specjalnych portalach dla entuzjastów takiej zabawy.
Na konferencję wybrałem się z ciekawości, żeby zobaczyć jak wygląda świat gier tworzonych właśnie w HTML5. I muszę przyznać, że zostałem zupełnie zaskoczony. Poczułem się jakby wrócił jakieś 20 lat wstecz do swoich gamedevowych początków.
Czas się cofnął Pierwszy dzień upłynął po hasłem "dirty rectangle". Dla niewtajemniczonych - jest to technika, która polega na tym, że zamiast rysować całą zwartość ekranu w każdej kolejnej ramce, rysuje się jedynie te fragmenty ekranu, w których coś się zmieniło (owe "brudne prostokąty). Cel jest prostu - operacje rysowania w HTML5 są bardzo kosztowne, czyli wolne. Im mniej tych operacji, tym szybciej nasza gra działa. Takie same problemy rozwiązywało się na początku lat 90. ubiegłego wieku, gdzie operacja rysowania na ekranie także były bardzo wolne. Tylko wtedy procesory było setki razy wolniejsze - a przecież dzisiejsze smartfony biją na głowę swoją wydajnością komputery z tamtych czasów!
Jak widać, w zasadzie mówimy o grach podobnych do tych sprzed 15 lat. Oczywiście, rozdzielczości ekranu są znacząco większe od standardowego 320x200, które królowało w grach wtedy, a dziś jest rozdzielczością żenującą nawet w telefonie.
Dużo techniki, mało gier Wracając do konferencji, miała ona bardzo techniczny charakter. Jak na konferencję o grach, nie było na niej praktycznie gier. Mieliśmy pokazy różnych silników i technologii napisanych w JavaScript, które, znów w teorii, można użyć do stworzenia różnych gier 2D, gdzie maksymalnym wypasem jest widok izometryczny. Obejrzeliśmy wiele dem technicznych, poduczyli się jak tworzyć treść do gier, czyli najczęściej sprajty i animacje (o zgrozo, Flash był polecany jako jedno z narzędzi).
Możliwości są, ale gier nie ma. A przynajmniej nie ma ich za wiele.
Problemy poruszane na prezentacjach i w dyskusjach mogą być bardzo zaskakujące dla ludzi, którzy mają doświadczenie w tradycyjnym tworzeniu gier i wywoływać raczej pobłażliwy uśmiech. Wiele z tych problemów zostało już kiedyś rozwiązanych i dawno zapomnianych, a teraz nowe pokolenia młodych ludzi odkrywa i proponuje te problemy na nowe. Podobnie jak rozwiązywali je twórcy gier flashowych jeszcze parę lat temu. Zupełnie zignoruję kwestię technologii 3D, gdyż te na razie opierają się o WebGL, która to technologia nie jest jeszcze tak rozpowszechniona na jak "czysty" HTML5.
HTML5 to przyszłość? Odpowiadając na tytułowe pytanie - HTML5 może zostać technologią gier przyszłości, ale będziemy potrzebowali na to jeszcze trochę czasu. Trzeba rozwiązać problemy techniczne, a następnie dogonić, albo lepiej przegonić to, co oferują bardziej "tradycyjne" sposoby tworzenia gier. W przeciwnym wypadku będziemy mieli do czynienia w zabawę dla bardzo wąskiego grona geeków. Warto pamiętać, że gry robi się dla graczy - w przeciwnym wypadku nie ma to większego sensu.
Nie chcę w żaden sposób deprecjonować wysiłków ludzi, którzy bawią się w gry tworzone w HTML5 i JavaScript. Być może przecierają nowe szlaki, którymi kiedyś podąży część przemysłu gier. Szkoda tylko, że koncentrują się głównie na technicznych aspektach procesu, zamiast skupić się na tworzeniu atrakcyjnych gier i wzbogacać je o wiele elementów, które nie były możliwe 20 lat temu, choćby o rozgrywkę wieloosobową, czy interakcje socjalne. Fajne gry dostępne na wszystkich urządzeniach to słuszny cel. Wystarczy już dominacji Angry Birds.
Koniecznie trzeba pochwalić organizatorów, że udało się zorganizować taką pionierską konferencję właśnie w Polsce i zainteresować nią tak dużą grupę uczestników spoza kraju. Pierwszy krok został zrobiony, miejmy nadzieję, że będzie tylko lepiej.
Maciej Miąsik
P.S. HTML5 na naprawdę fajne logo.