Architektura informacji w grach

Architektura informacji w grach to nie jest temat z pierwszych stron branżowych portali i czasopism. Pisze się o wspaniałej grafice, możliwościach nowego silnika i cudownych ścieżkach dźwiękowych, ale rzadko o tym jak zaprojektowano interface czy jak doskonale prezentowane są w nim informacje. A bywają prezentowane w taki sposób, jakby nikt nie zastanawiał się nad tym co, dlaczego i gdzie będzie wyświetlone. A decyzję o tym podejmował developer na podstawie listy zadań, które dostał po ostatnich testach na etapie crunchu. Dlaczego tak się dzieje? Spróbuję to wytłumaczyć.

Produkt i proces

Pracując nad różnego rodzaju aplikacjami biznesowymi, niezależnie od tego czy to serwis internetowy, aplikacja intranetowa, mobilna czy cokolwiek innego, pracujemy w podobnym procesie. Skoncentrowany jest na potrzebach użytkownika. Nie ma znaczenia czy użytkownikiem będzie biznes, czy konsument — tworzenie aplikacji polega przede wszystkim na stworzeniu interfejsu, który zapewni prostą i intuicyjną realizację określonych zadań. Z punktu widzenia użytkownika to co dzieje w tle, nie ma znaczenia. Usera interesuje wyłącznie to co widzi i co robi — na te elementy stawiamy coraz większy nacisk przy tworzeniu aplikacji. Zatem podstawową warstwą, którą ocenia użytkownik jest interfejs i jego wygoda.

Przy tworzeniu gier sprawa wygląda inaczej. Właściwym produktem jest doświadczenie, które gra oferuje. To doświadczenie zależy od scenariusza, gatunku gry oraz przyjętych rozwiązań przy jej tworzeniu. Interfejs nie jest w centrum rozwiązania — stanowi narzędzie do obsługi całego doświadczenia. Dlatego praca nad interfejsem nie jest najwyższym priorytetem, co więcej często brakuje na to czasu i zasobów.

Kolejną różnicą są kompetencje osób, które pracują nad interfejsem. Przy projektowaniu aplikacji biznesowych najczęściej angażujemy projektantów UX i projektantów graficznych. Z prostej przyczyny — to różne kompetencje. Uxowiec tworzy koncepcję architektoniczną, a grafik tworzy na tej podstawie koncepcję interfejsu dla użytkownika. Zespół pracuje wspólnie (często również z developerem), tak aby ostateczne doświadczenie było jak najwyższej jakości.

Przy projektowaniu gier nad interfejsem bardzo często pracują UX/UI designerzy. To osoby, które w założeniu odpowiadają zarówno za użyteczność i wygodę, jak i wygląd i spójność interfejsu z całością gry. Oznacza to, że muszą łączyć kompetencje obu rozległych gałęzi wiedzy — wydaje mi się to nie do pogodzenia. Na szczęście coraz więcej zespołów odchodzi od takiego modelu.

Na koniec zwróćmy uwagę na rolę interfejsu w projekcie i oczekiwania zespołu projektowego w stosunku do jego wyglądu i działania. W aplikacjach biznesowych interfejs faktycznie jest produktem — jego złe działanie powoduje często negatywną ocenę całego produktu. Musi być więc zaprojektowany przynajmniej dobrze. W grach interfejs służy do korzystania z produktu. Dlatego interfejsy w grach są (prawie zawsze) wizualnie atrakcyjne — muszą pasować do całości produkcji i właściwie oddawać jej klimat. Wygląd interfejsu staje się często ważniejszy dla producentów niż jego użyteczność, wygoda i logika korzystania.

Platformy i urządzenia

Użytkownicy aplikacji biznesowych korzystają w przeważającej większości z tych samych platform i urządzeń. System operacyjny czy producent z punktu widzenia użytkownika interfejsu nie ma większego znaczenia. Cały czas korzysta z monitora, klawiatury i myszy lub ekran dotykowego. Dlatego też proces projektowania tych interfejsów jest podobny, niezależnie od tego na jaką platformę projektujemy.

Jak sytuacja wygląda w grach? Sprawa jest trochę bardziej skomplikowana.

Główną platformą są komputery PC z systemem Windows. Gracze korzystają przede wszystkim z myszy i klawiatury, czasami z gamepadów. Obraz wyświetlają monitory o przekątnej średnio od 24 do 30 cali.

Kolejną są konsole, a wśród nich najpopularniejsze PS4 i XBO (nie wchodząc w podział rynku). Te obsługiwane są przy pomocy gamepadów, a gra się na ekranach telewizorów (lub rzutników), o przekątnej nawet do 100 cali.

Odmienną kategorią sprzętu są tzw. Handheldy, gdzie od lat króluje Nintendo. Ich najnowsza konsola — Nintendo Switch — ucieka jednak od utartych schematów. Mamy więc więc przenośną konsolę o ekranie wielkości 6 cali, którą możemy podłączyć do telewizora o dowolnej wielkości i zamienić Switcha w tradycyjną konsolę. System obsługujemy przy pomocy joy-conów, które działają podobnie do gamepadów, ale posiadają dodatkowo czujniki: żyroskop i akcelerometr. Interfejs może zatem wykorzystywać dane również z tych czujników.

Ostatnią platformą są urządzenia mobilne, czyli tablety i telefony z platformami iOS i Android. Gracze korzystają z dotykowych ekranów tych urządzeń — dokładnie tak samo jak w przypadku aplikacji biznesowych czy konsumenckich. Platformy mobilne są jednak tworzone przy użyciu innych technologii i nie traktowane jak część tego samego rynku.

Gry tworzy się na jedną (tzw. Exclusive. Np. God of War 4 na PS4, Halo na XB360) lub kilka platform jednocześnie (częściej spotykany model, np. Witcher 3 dostępny był w dniu premiery na PC, PS4 i XBO). Jeśli gra odnosi sukces na jednej platformie jako exclusive — zdarza się, że producent decyduje się na development kolejnych platform — tzw. Port (np. Diablo 3 wydany najpierw na PC, następnie na konsolach). Niektóre gry tworzone są komputery PC, a potem przenoszone na platformy mobilne — dotyczy to zwłaszcza gier karcianych (np. Hearthstone, Gwint).

Jak zaprojektować takie interfejsy? Trzeba wziąć pod uwagę dużo więcej czynników i urządzeń wejściowych, więcej kontekstów użytkownika, różne przyzwyczajenia w zależności od platformy, inne schematy działania. To bardziej pracochłonny i skomplikowany proces niż, w przypadku np. serwisów WWW, gdzie obsługujemy tylko desktop + mobile.

Dochodzą również zupełnie inne od aplikacji biznesowych przypadki użycia, jak granie w kilka osób na jednym ekranie, popularne w przypadku konsol, czy granie w trybach wieloosobowych online — dostępne obecnie praktycznie na każdej platformie. To sprawia, że interfejs musi być bardziej elastyczny i dostosować się odpowiednio do wybranego przez gracza trybu.

Technologia

Ważnym zagadnieniem są wymagania technologiczne platform, na które tworzona jest gra. Każda z platform stawia przed developerami również konkretne ograniczenia i pewien rygor przy tworzeniu kodu. Kluczowa jest właściwa obsługa zasobów platformy, ograniczenie wycieków pamięci i generalna optymalizacja tworzonego oprogramowania. Celem jest ograniczenie błędów i crashy finalnej aplikacji do zera.

Duży wpływ na działanie aplikacji ma również interfejs, co może nie być oczywiste. Może nam się wydawać, że interfejs nie wpływa na działanie samej aplikacji, jest jednak jej integralną częścią. Ten fakt wymaga czasami ograniczeń w zakresie i sposobie wyświetlanych danych. Ma to znaczący wpływ na to jak interfejs ostatecznie wygląda i działa.

Ograniczenia stawiają też silniki (ang. engine), przy pomocy których tworzona jest gra. Do najpopularniejszych należą Unity czy Unreal Engine. Silniki definiują w dużym stopniu proces pracy nad oprogramowaniem gry czy wykorzystanie zasobów platformy. Może to mieć wpływ również na pracę projektantów UI.

Złożoność projektów