BioShock: Infinite - jak zmieniono silnik Unreal 3.0
BioShock: Infinite to bez wątpienia jeden z najbardziej oczekiwanych tytułów wśród tych zapowiedzianych na rok 2012. Pokazane do tej pory materiały nie pozostawiają wątpliwości, że graficzna strona tej produkcji będzie imponująca. Na oficjalnym forum dyrektor techniczny z Irrational Games wytłumaczył jak zmodyfikowano technologię Unreal Engine 3.0 na potrzeby tej gry.
BioShock: Infinite to bez wątpienia jeden z najbardziej oczekiwanych tytułów wśród tych zapowiedzianych na rok 2012. Pokazane do tej pory materiały nie pozostawiają wątpliwości, że graficzna strona tej produkcji będzie imponująca. Na oficjalnym forum dyrektor techniczny z Irrational Games wytłumaczył jak zmodyfikowano technologię Unreal Engine 3.0 na potrzeby tej gry.
Do stworzenia BioShock: Infinite potrzebny był bardzo elastyczny i potężny silnik graficzny. To w końcu gra, w której całe budynki mogą szybować w powietrzu i pełno w niej scen gdzie walczymy z wrogami pędząc na linkach z prędkością 140 km/h. Technologia, na której oparto pierwszą część serii była mocno zmodyfikowaną wersją Unreal Engine 2.0. Tym razem oczywistym było, że silnik ten po prostu nie podoła zadaniu udźwignięcia nowego projektu. Co gorsza, dotychczasowe narzędzia były po prostu zbyt prymitywne, więc zamiast próbować po raz kolejny przerabiać starą technologię podjęto decyzję o przesiadce na Unreal Engine 3.0.
Oczywiście, nowsza wersja silnika autorstwa Epic Games wciąż nie spełniała wszystkich potrzeb Irrational, więc studio musiało tę technologię mocno zmodyfikować i rozbudować. W BioShock: Infinite przyjdzie nam często walczyć z bardzo licznymi grupami sprytnych przeciwników, więc konieczne było napisanie całkiem nowego systemu sztucznej inteligencji, takiego który byłby nie tylko bardziej wydajny, ale również pozwalał projektantom na łatwe wprowadzenie konkretnych typów zachowań. Oczywiście, nawet najlepsze SI nie zaimponuje graczom, jeśli postacie będą poruszały się w sztuczny sposób, więc podjęto decyzję o wykupieniu licencji na system animacji Morpheme firmy Natural Motion.
Kolejnym problemem był fakt, że wszystkie popularne silniki (CryEngine 3, Unreal Engine 3 czy id Tech 5) zaprojektowano do wyświetlania statycznych światów. Co prawda, potrafią one poradzić sobie z falującymi drzewami, ale w BioShock: Infinite często cała powierzchnia poziomów będzie się poruszała, a nawet pękała na kawałki. Dlatego wprowadzono technologię, którą ludzie z Irrational nazwali „Floating World” (czyli Unoszące się Światy), co pozwoliło oprzeć świat gry na szybujących w powietrzu wyspach. Rezultaty tego mogliśmy już podziwiać w wypuszczonych do tej pory filmikach.
Dużą rolę w tworzeniu atmosfery BioShock: Infinite odegra system oświetlenia i standardowe rozwiązania a Unreal Engine 3.0 nie były wystarczająco zaawansowane by sprostać temu wyzwaniu. Dlatego Irrational dodało technikę Deferred Lighting (tą samą zastosowaną w CryEngine 3 oraz grach Uncharted 2 oraz Killzone 2) jak również zmodyfikowało silnik tak, by umożliwiał osiągnięcie efektu global ilumination (czyli globalnego oświetlenia), dzięki któremu każdy obiekt oświetlany jest zarówno przez światło emitowane bezpośrednio przez dane źródło, jak również przez te odbite od innych obiektów.
Zmiany nie ominęły także systemu audio i teraz wysoką jakość dźwięku przestrzennego zapewni technologia WWise firmy AudioKinect. Na koniec pochwalono się, że silnik został zoptymalizowany pod kontem architektury wielordzeniowej, co pozwala mu korzystać ze wszystkich dostępnych w danym systemie rdzeni. Dzięki temu powinno być możliwe nie tylko wyciśnięcie wszystkich soków z konsol Xbox 360 oraz PlayStation 3, ale również zrobienie użytku z mocnych konfiguracji współczesnych pecetów.