Narzędzia Game Dev wspierające Enterprise. Czyli jak wykorzystać technologie ze świata gier w biznesie.

Czyli jak wykorzystać technologie ze świata gier w biznesie.

Wszyscy lubimy dobrą zabawę i mile spędzony czas, a wielu z nas uważa gry wideo za najlepszą możliwą rozrywkę. Nie każdy jednak zdaje sobie sprawę, że narzędzia do tworzenia tychże są również wykorzystywane w szeroko pojętym biznesie. Czym są wyżej wspomniane narzędzia? Jak, kiedy i gdzie je wykorzystujemy oraz jaki ma to wpływ na biznes i użytkowników? Dzisiaj właśnie o tym. Zapraszam.

First things first – trochę historii

Fachowa nazwa narzędzi do tworzenia gier komputerowych to silniki gier (z ang. game engine). To główne i najważniejsze części kodu gry wideo – swoisty szkielet, framework, rusztowanie do dalszej pracy. 

Ta bardzo prosta definicja specjalistycznego oprogramowania kryje za sobą szereg zaawansowanych technik i technologii. Sam silnik gry składa się z innych silników/modułów, często zewnętrznych. Rendering engine jest odpowiedzialny za generowanie grafiki 2D lub 3D, physics engine to framework symulacji fizyki obiektów w grze, silnik audio jest modułem obsługujący sztuczną inteligencję – i tak dalej. Taki zbiór technologii na ogół dostarczany jest z edytorem lub nawet kilkoma edytorami, aby umożliwić uproszczony i szybki rozwój gier.

Obecnie silniki są potężnymi „kombajnami”. Początkowo były wsparciem dla konkretnego typu gry. Często ekipa tworząca grę ponosiła również odpowiedzialność za zbudowanie adekwatnego silnika (gra platformowa – silnik gry platformowej, samochodówka – silnik gry samochodowej). Miało to swoje uzasadnienia w postaci ograniczenia sprzętowego czy nierozwiniętego jeszcze rynku gier. Niestety, takie rozwiązania skutkowały niewielką uniwersalnością narzędzia i słabą jakością efektu końcowego. Deweloperzy i programiści pozostawali skazani na konkretne rozwiązania.

Wraz z rozwojem rynku oraz sprzętu, a szczególnie jego mocy, silniki stawały się coraz bardziej uniwersalne i potężne. Z czasem powstawały firmy, które zajmowały się tylko dostarczaniem frameworków, co doprowadziło do skoku technologicznego i jakościowego. Dzięki temu twórcy mogli skupiać się wyłącznie na pracy nad grą. Do nowych rozwiązań zaliczały się: realistyczna grafika 3D czasu rzeczywistego, wysoka rozdzielczość, rendering bazujący na fizyce, czyli w skrócie PBR, którego celem jest stworzenie bardziej realistycznego oświetlenia otoczenia korzystając z rozwiązań optyki i rzeczywistych właściwości materiałów, symulacje cząsteczek i destrukcji, motion capture – przechwytywanie ruchu aktorów i zapisywaniu ich w komputerze, dzięki czemu zarejestrowane postacie poruszają się bardzo naturalnie i realistycznie, a przechwycone dane są gotowe do dalszej obróbki – to tylko kilka technologii w produkcji gier, które są prężnie rozwijane już od kilkunastu lat.

Od niedawna królują urządzenia mobilne: AR i VR. Na tym polu silniki gier również prężnie się rozwijają. Ultrarealistyczna grafika, która – dzięki śledzeniu promieni (z ang. ray tracing) – pozwala na generowanie fotorealistycznych obrazów scen trójwymiarowych oraz nowe metody rysowania na ekranie ogromnej ilości obiektów i efektów, inaczej renderingu miliarda poligonów na ekranie, to przyszłość, która dzieje się już dzisiaj.

Warto w tym miejscu zaznaczyć, że obecnie branża ma swoich liderów (nie są to jedyne silniki na rynku, lecz te najbardziej popularne): Unreal oraz Unity. W ogromnym skrócie: Unity dominuje na polu rozwiązań mobilnych, Unreal zaś pozwala pchnąć grafikę na najwyższy poziom, ale o tym później.

Co z tym Enterprise?

Można śmiało powiedzieć, że moment, w którym gry wideo zaczęły zbliżać się do odwzorowania realizmu (mówię głównie o grafice 3D), mocno przyczynił się do zainteresowania silnikami gier przez kilka gałęzi biznesu.

Jako pierwszy weźmy na tapetę biznes architektoniczny. Co prawda branża mocno wspierała się i nadal wspiera klasycznymi wizualizacjami 3D, ale dzięki narzędziom do tworzenia gier zyskuje na interaktywności. Standardowa forma prezentacji projektów wnętrz opiera się zazwyczaj na wspomnianych już wizualizacjach. Często są to statyczne obrazy, rzadziej wideo. Dzięki silnikom gier do warstwy prezentacyjnej można w dość prosty sposób dodać interakcję, a klient może swobodnie przespacerować się po przygotowanej wizualizacji wnętrza. Nic nie stoi na przeszkodzie, aby otworzył drzwi lub zmienił kolor blatu kuchennego. Co więcej, w połączeniu z technologią VR, klient może taki spacer przeżyć na bardzo wysokim poziomie immersyjności – może przebywać w swoim wymarzonym wnętrzu oraz rozkoszować się wirtualnym zwiedzaniem.

Kolejną z gałęzi biznesu, która korzysta z rozwiązań wypracowanych przez twórców gier, jest branża automotive. Tuning pojazdów, a więc zmianę wyglądu zderzaka, wydechu czy koloru nadwozia, kojarzymy często z grami samochodowymi. Dlaczego by nie wykorzystać takich rozwiązań jako konfiguratora w salonie sprzedaży? Klient dzięki temu może w interaktywny sposób dobrać sobie wyposażenie swojego wymarzonego pojazdu i obejrzeć efekt końcowy z każdej strony. Niektóre silniki gier działają również pod przeglądarkami www, więc nic nie stoi na przeszkodzie, aby klient korzystał z konfiguratora w zaciszu własnego domu.

Twórcy narzędzi game dev szybko zorientowali się w sytuacji i rozpoznali potencjał, jaki drzemie w ich rozwiązaniach. Na potrzeby rynku i gałęzi enterprise odpowiedzieli, dodając kolejne funkcjonalności do swoich silników, co również wpłynęło na rozwój samych gier. Dzięki temu obecnie mamy narzędzia takie, jak camera tracking, czyli śledzenie pozycji kamery (podobnie jak w przypadku motion capture) oraz live action compositing (kompozycja scen 3D razem z obrazem rzeczywistym, na przykład znany green screen). Zyskał na tym szeroko pojęty show biznes: telewizyjne programy na żywo mogą w ciekawy sposób zostać urozmaicone efektami rodem z gier komputerowych. Prognoza pogody z szalejącym tornadem w studiu? Żaden problem!

Wiele innych gałęzi biznesu również czerpie korzyści podłożem wywodzące się z gier. Uważam, że największą i najważniejszą zaletą takich rozwiązań jest interaktywność i zabawa z ich użytkowania, co z kolei przyciąga potencjalnych klientów.

Dlaczego Unity? Dlaczego Unreal?

Pozycja lidera nie bierze się znikąd. Zarówno Unity, jak i Unreal zapracowali sobie na miano najpopularniejszych silników.

Unity jest młodsze. Pojawiło się w 2005 roku. Jego największą zaletą jest lekkość na platformach mobilnych – niewysokie wymagania sprzętowe i rozmiary już gotowych produkcji idealnie nadają się dla telefonów czy tabletów. Silnik ten ma również stosunkowo niski próg wejścia. Podczas rozpoczynania przygody z Unity, czy to jako twórcy gry, czy jako twórcy aplikacji biznesowej, mamy do dyspozycji szereg oficjalnych tutoriali i gotowych przykładów. Community i fora aż kipią od przydatnych porad. W Asset Store, czyli internetowym sklepie, za stosunkowo niewielkie kwoty możemy kupić paczki obiektów 2D i 3D, tekstur, dźwięków, skryptów, a nawet całe bazy pod gry i aplikacje.

Nie każdy jest programistą, dlatego niektórzy mogą się zniechęcić koniecznością korzystania z C# w Unity, w którym pisze się skrypty i mechaniki. Kolejnym minusem jest w tym ujęciu wspomniana prostota, bo z jej powodu niełatwo jest uzyskać w Unity ultrarealistyczną grafikę czy zaawansowane efekty. Nic straconego jednak, ponieważ jest Unreal Engine.

Unreal to trochę inna bajka. Pierwsza wersja pojawiła się w 1998 roku i od razu podbiła rynek. Prężnie rozwijany na przestrzeni lat, doczekał się aktualnej wersji 4. Od zawsze windował grafikę na najwyższy poziom, jednak nie samą grafiką żyje silnik gry. Unreal Engine, podobnie jak Unity, ma bardzo bogatą dokumentację i pomocną społeczność. Odpowiednikiem Asset Store jest tutaj Marketplace. Co prawda przez swoją złożoność i ogrom technologii Unreal jest bardziej wymagający, lecz początkujący użytkownik po ujarzmieniu dużej ilości narzędzi i edytorów może w nim tworzyć cuda. Obecnie silnik od Epic Games jest rozwijany na wielu płaszczyznach. Od niedawna podczas tworzenia nowego projektu mamy do wyboru nie tylko templatki gier, ale również aplikacji biznesowych. Enterprise jest mocno wspierany przez twórców silnika, na bieżąco pojawiają się nowe funkcjonalności i narzędzia. Wspomniany już ray tracing oraz live action compositing, ale także pixel streaming (strumieniowa komunikacja z aplikacją podobna do wideo, dzięki której możemy sterować aplikacją zdalnie z dowolnego urządzenia). Dzięki Blueprint Visual Scripting (czyli swego rodzaju skryptowemu językowi programowania, opartemu na tak zwanych bloczkach, który jest przystępny dla „nieprogramistów”), bardzo szybko i łatwo możemy tworzyć prototypy mechanik i funkcjonalności gier czy aplikacji. Dla prawdziwych programistów dostępny jest natomiast C++ i cały kod źródłowy Unreal Engine. Minusem zdecydowanie są wymagania sprzętowe. No ale coś za coś.

Coś większego – wirtualne makiety inwestycji deweloperskich

Wspomniałem już o kilku stosunkowo prostych rozwiązaniach enterprise na bazie gier. Na koniec chciałbym podać przykład ciekawego i złożonego rozwiązania biznesowego, bardzo dobrze wykorzystującego narzędzia game dev.

Mowa o wirtualnych makietach inwestycji deweloperskich. Tego rodzaju aplikacja łączy w sobie cechy wizualizacji architektonicznych, narzędzi sprzedażowych, konfiguratorów i wirtualnych spacerów. Jak to działa? Trochę jak przeglądanie folderu z mieszkaniami – tyle, że lepiej. Zazwyczaj makieta znajduje się w salonie sprzedaży. Na makiecie możemy przyjrzeć się otoczeniu inwestycji, zobaczyć, co ciekawego znajduje się w sąsiedztwie, przyjrzeć się detalowi samej fasady, a elementem interaktywnym może tu być np. zmiana pory dnia; można swobodnie przespacerować się po zaplanowanych częściach wspólnych i zobaczyć, jak daleko znajduje się parking od lokalnego spożywczaka. Integracja przeglądarek www w silnikach gier pozwala nam podpiąć do makiety mapy Google czy stronę informacyjną inwestycji. Wisienką na torcie jest wyszukiwarka mieszkań – możemy przeglądać dostępne mieszkania, zobaczyć je z każdej strony w rzucie 3D, a co najważniejsze: wyjrzeć przez okno, zmienić kolor ściany w salonie, a na koniec wybrać kilka interesujących nas mieszkań i ostatecznie wysłać bezpośrednio z aplikacji maila z rzutami i screenshotami, aby móc spokojnie podjąć decyzję o kupnie później. Fajnie!

Przykład makiet udowadnia, że potrzeba tego typu rozwiązań jest duża, a pole do popisu ogromne. Myślę, że w jakimś stopniu zobrazowałem i zachęciłem do niekonwencjonalnego wykorzystania narzędzi game dev. Nikt nie mówi, że biznes musi być nudny, łączmy przyjemne z pożytecznym.