Oto nowa generacja: Unreal Engine 5 w akcji na PlayStation 5 - analiza Digital Foundry
Gigantyczny skok - trzeba zobaczyć, żeby uwierzyć.
Widzieliśmy specyfikacje, słyszeliśmy zapewnienia - ale nie doświadczyliśmy jeszcze prawdziwej demonstracji wizji stojącej za nową generacją. Taki stan rzeczy zmienił się wraz z pokazem silnika Unreal Engine 5 od Epic Games, za pośrednictwem zdumiewającego dema technologicznego, uruchomionego - jak potwierdzono - na PlayStation 5. Obietnice w sferze jakości i poziomu komplikacji są ogromne, niemal niewyobrażalne. Wirtualny świat, w którym geometria modeli jest nieograniczona, bez obiektów wyskakujących przed graczem i znikających w oddali? Już to jest bezprecedensowe, a dodajmy w pełni dynamiczną globalną iluminację w czasie rzeczywistym. Brzmi zbyt dobrze, by było prawdziwe? Poniżej znaleźć można dowody w postaci materiału wideo. To właśnie nowa generacja - przyszłość jest bardzo ekscytująca.
Z pomocą Unreal Engine 5 twórcy silnika chcą odciążyć deweloperów, by ci nie musieli przejmować się liczbą polygonów i ograniczeniami w rysowaniu ich na ekranie. Zamiast tego możliwe ma być importowanie modeli wprost z programów do tworzenia grafiki trójwymiarowej czy też skanów fotogrametrii - bez obróbki. Nie trzeba już upraszczać modeli, by osiągnąć założone poziomy wydajności, nie potrzeba ręcznego tworzenia różnych poziomów jakości, wyświetlanych w zależności od odległości od kamery. Nowy system w EU5 - pod nazwą Nanite - zajmie się wszystkim samodzielnie. Jednocześnie inna nowinka technologiczna - Lumen - zapewni realistyczne i dynamiczne oświetlenie w ramach globalnej iluminacji w czasie rzeczywistym.
O jakim poziomie detali mowa? Poniższe demo technologiczne pod tytułem „Lumen in the Land of Nanite” obejmuje zbliżenie na statuę składającą się 33 milionów trójkątów i tekstur w rozdzielczości 8K. Jest ona wyświetlana w maksymalnej jakości, bez angażowania grafików. Przechodząc do następnego pomieszczenia, mamy niemal 500 identycznych posągów (dokładnie - 485), każdy w maksymalnym poziomie detali. Łącznie daje to 16 miliardów trójkątów, wyświetlanych płynnie na ekranie. Brzmi niemożliwie, ale nadchodząca generacja dostarcza narzędzia pozwalające zrealizować wizję renderowania, która wydawała się być nieosiągalna. Epic Games pokazało nam demo wcześniej, mieliśmy też okazję porozmawiać z dyrektorem generalnym firmy, dyrektorem do spraw technicznych oraz wiceprezesem ds. inżynierii. To - odpowiednio - Tim Sweeney, Kim Libreri i Nick Penwarden.
- Stojąca za tym wszystkim filozofia sięga lat 1980., do konceptu REYES: Render Everything Your Eye Sees - mówi Sweeney. - Śmieszny akronim oznacza, że przy dysponowaniu na dobrą sprawę nieskończoną liczbą detali, to zadaniem silnika jest określenie, jakie piksele renderować. Nie chodzi o rysowanie wszystkich 10 miliardów polygonów w każdej klatce obrazu, bo wiele z nich jest znacznie, znacznie mniejsza niż jeden piksel. Mowa o renderowaniu ich w przybliżeniu, ale bez dostrzegalnej gołym okiem utraty poziomu detali. Jeśli uda się to osiągnąć, temat geometrii mamy z głowy. Nic więcej nie można zrobić. Jeśli podnieść liczbę polygonów, to i tak ich nie zauważymy, ponieważ mają mikroskopijny wpływ na każdy piksel na ekranie.
Pisząc prościej, UE5 renderuje tyle trójkątów na piksel, ile użytkownik potrzebuje zobaczyć. Brzmi wyjątkowo prosto, ale to zwieńczenie ponad trzech lat pracy w dziale badań i rozwoju, prowadzonym przez technicznego dyrektora do spraw grafiki, Briana Karisa. Unreal Engine 5 - przynajmniej w wersji nowej generacji - to silnik na poziomie mikro-polygonów. Choć demo uruchomiono na PlayStation 5, to technologia przeznaczona jest - jak i poprzednie wersje - także na inne platformy.
- Kluczowe, debiutujące funkcje będą działały na wszystkich konsolach nowej generacji - dodaje Sweeney. - Nie mamy benchmarków z porównaniem wydajności i nie możemy się nimi podzielić, ale to zestaw opcji, na jakie można liczyć w tej generacji: geometria mikro-polygonów w ramach Nanite oraz globalna iluminacja w czasie rzeczywistym, czyli Lumen.
Pierwsi deweloperzy będą mieli okazję sprawdzić UE5 na początku 2021 roku, a niedługo później przesiadkę z UE4 na nowy silnik wykona Fortnite. W odróżnieniu od Unreal Engine 4, nowa wersja nie będzie wyraźnym odcięciem od przeszłości. Platformy docelowe pozostają takie same, więc UE5 zadziała na całym szeregu urządzeń: od mocnych PC, przez stare telefony z Androidem, kończąc na urządzeniach obecnej generacji - jak Switch. Tutaj jednak nie powinniśmy oczywiście spodziewać się podobnych wrażeń.
- Aby podtrzymać zgodność ze starszą generacją platform, mamy odpowiedni system pracy na nowych urządzeniach. Tworzone modele są importowane w najwyższej jakości, godnej filmów, włączane bezpośrednio na nowych konsolach - tłumaczy Sweeney. - Silnik zapewnia lepsze skalowanie, by zmniejszyć rozdzielczość i włączyć te same obiekty na wszystkich platformach, aż do systemu operacyjnego iOS i Androida sprzed kilku lat. Modele tworzymy więc raz i możemy udostępnić je wszędzie, budując grę na wszystkie systemy, ale otrzymamy różny poziom jakości grafiki.
Epic podkreśla sprawne działanie nowych technologii na wielu systemach pomimo prezentowania dema technologicznego na PlayStation 5, które stawia na ekstremalną przepustowość danych. Z drugiej strony mamy DirectX 12 Ultimate od Microsoftu, także z radykalną zmianą w sferze obsługi plików. Epic stara się najwyraźniej nie bazować zbytnio na jednej z tych stron. Wkrótce po wywiadzie przedstawiciele firmy potwierdzili, że UE5 obsługuje system „primitive shaders” z PS5, ale tylko, jeśli ten w danej sytuacji wygeneruje rezultaty lepsze od rozwiązań w Unreal Engine 5.
- Do renderowania na takim poziomie detali potrzeba wielu różnych komponentów - kontynuuje Sweeney. - Wśród nich jest wydajność GPU oraz architektura CPU, potrzebne do rysowania tak skomplikowanej geometrii, całe mnóstwo teraflopsów. Kolejny element to zdolność do efektywnego ładowania i strumieniownia danych. Jednym z najważniejszych wysiłków, stale prowadzonych także w Unreal Engine 5, jest optymalizacja pamięci masowej w następnej generacji, by ładowanie było szybsze o kilka rzędów wielkości. Nie troszeczkę szybsze, ale dużo szybsze, by wyświetlić całą tę geometrię, nawet jeśli nie mieści się na raz w pamięci... Sony jest tu pionierem, jeśli mowa o architekturze PlayStation 5. Mają boski system pamięci, daleko wyprzedzający PC, choć na wysokiej klasie komputerze osobistym z SSD - zwłaszcza NVMe - nadal osiągnąć można świetną wydajność.
Szczególnie w głowach utkwiła nam jednak wzmianka o REYES. Demo technologiczne UE5 pokazuje nie tylko ekstremalne detale z dalekich odległości, ale także olbrzymie zasięgi widzenia, brak doczytywania obiektów i widocznego gołym okiem zmieniania ich jakości na bazie odległości od postaci. Wszystko jest płynne, spójne. W czym tkwi sekret?
- Sekretem jest chyba to, że nadrzędnym celem Nanite jest renderowanie na dobrą sprawę jednego trójkąta na piksel. Gdy dotrzemy do takiego poziomu szczegółów, zmiany jakości są niezauważalne - mówi Nick Penwarden.
- To właśnie koncept Render Everything Your Eye Sees [Renderuj wszystko, co widać - red.] - dodaje Sweeney. - Renderuj tyle, że gdyby renderować jeszcze więcej, zmiany nie dałoby się zauważyć. Dlatego właśnie, jeśli poziom detali się zmienia, nie można tego wychwycić gołym okiem.
To właśnie przyjąć można także za definicję silnika mikro-polygonowego. Koszty w układzie graficznym będą zapewne bardzo wysokie, ale nowa generacja powinna sobie z nimi poradzić - a rezultaty są wyraźnie widoczne. Renderowanie jednego trójkąta na piksel oznacza, że płynność działania będzie skalowała się wraz z rozdzielczością.
- Co interesujące, całość działa bardzo dobrze także z naszą techniką dynamicznego skalowania rozdzielczości - dodaje Penwarden. - Gdy obciążenia po stronie GPU rosną, możemy się dostosować i obniżyć nieco rozdzielczość. W demie korzystamy z dynamicznego skalowania, choć ostatecznie przez większość czasu patrzymy na 1440p.
Penwarden potwierdza także system temporalnej akumulacji z Unreal Engine 4. W uproszczeniu, detale z poprzednich klatek obrazu pomagają renderować aktualną ramkę. Rozwiązanie zastosowano także w demie. Imponuje także otwartość Epic Games - spędziliśmy sporo czasu na analizowaniu otrzymanych od firmy zrzutów z ekranu w 3840 × 2160. Liczenie pikseli na krawędziach nie ma tu jednak większego sensu - to jakby liczyć je w filmie Blu-ray. Ale temporalna akumulacja w UE5 to dużo więcej niż tylko wygładzanie krawędzi czy rekonstrukcja obrazu - to fundament systemu oświetlenia Lumen.
- Temporalna akumulacja, nie tylko zwykłe, temporalne wygładzania krawędzi, to ważna część wyglądu, jaki udaje nam się osiągnąć - mówi Kim Libreri. - Bez komponentu temporalnego nie dałoby się osiągnąć takiej globalnej iluminacji na obecnym sprzęcie. Staramy się jeszcze lepiej zrozumieć, jak informacje z poprzednich klatek obrazu mogą nam pomóc, co przełożyło się na ogromną poprawę jakości. W ten sposób zbliżamy się do filmowej jakości renderowania. Bez tych próbek z poprzednich klatek (i mowa nie tylko o tym, co widać na ekranie, bo akumulować można znacznie więcej danych) globalna iluminacja nie wyglądałaby nawet w połowie tak dobrze.
Libreri sam jest nagradzanym twórcą z branży filmowej, w której to sferze coraz większe znaczenie ma właśnie Unreal Engine 4. Mężczyzna jest szczególnie podekscytowany perspektywą ujednolicenia pracy grafików, co pozwoliłoby korzystać z tych samych modeli bez względu na zastosowanie.
- Sporą inspiracją był fakt, że mamy obecnie dwa ekstrema: ludzi produkujących gry mobilne w UE4, a także osoby tworzące kolejne odcinki serialu „Mandalorian” w UE4. Staramy się wypracować sposób na ujednoliconą pracę, by nie było takich podziałów - mówi. - Deweloperzy powinni przeznaczać czas na tworzenie świetnych gier i rozgrywki, a nie na dłubanie przy modelach w oparciu o stare techniki sprzed dekady, potrzebne wtedy do kreowania lokacji.
Aby zaprezentować to podejście w akcji, demo UE5 na PS5 korzysta z obiektów w pełnej jakości, zaczerpniętych z fotogrametrycznej biblioteki Quixel Megascans, z teksturami 8K - nie wersji zoptymalizowanych dla gier.
- Jakby na potwierdzenie, połowa naszego zespołu twórców lokacji to standardowi, doświadczeni deweloperzy z Epic, podczas gdy druga połowa to nowi pracownicy. Przeszli do nas z branży filmowej i od razu poczuli się w silniku jak ryba w wodzie, ponieważ nie musieli przejmować się tymi barierami, wypalaniem map, optymalizacją geometrii... To była spora różnica w wydajności prac.
Na tym kończy się prezentacja możliwości Unreal Engine 5 w nowej generacji. Bezprecedensowy poziom detali i oświetlenia łączą się z technologią umożliwiającą generowanie obiektów tak szczegółów, jak tylko pozwala rozdzielczość. Do tego odświeżona fizyka, animacje i audio. Podczas rosnących obaw na temat kosztów i nakładów pracy potrzebnych do wykonania prawdziwie generacyjnego skoku jakości obrazu, Epic stawia na łatwe w użyciu narzędzia, ujednolicając technologie od najmniejszych projektów niezależnych, do największych filmów. Jednocześnie Sweeney obiecuje płynne przejście z UE4 na UE5.
- Jesteśmy teraz przy Unreal Engine 4.25, co stanowi 25. odsłonę serii - mówi. - Przy przechodzeniu na UE5 koszty po stronie deweloperów i złożoność całego procesu będzie jak mniejsze aktualizacje z przeszłości, przez co większość twórców przechodzi co kilka miesięcy. Chcemy zabrać społeczność ze sobą i uczynić to szybko, by nie okazało się za kilka lat, że mamy osoby, które utknęły w poprzedniej generacji, bez dostępu do tych funkcji.
Ta zapowiedź wykracza poza sam Unreal Engine 5. Epic otwiera także infrastrukturę, która napędza Fortnite - dla wszystkich zainteresowanych, nawet jeśli dany tytuł działa na innym silniku i ukazuje się na Steamie. Mowa o infrastrukturze serwerów Epic oraz funkcjonalności multiplatformowej, oficjalnie certyfikowanej przez producentów konsol. Ale nie powinno dziwić, że to właśnie Lumen in the Land of Nanite generuje większość nagłówków.
Po niedawnej prezentacji gier na Xbox Series X - pozbawionej rozgrywki - w rozważania na temat nowej generacji wkradł się pewien niepokój: czy nowe konsole będą w stanie dostarczyć dramatyczny skok jakościowy, jakiego oczekują gracze? Demo Unreal Engine 5 napawa optymizmem, w postaci jakości, jakiej wcześniej nie widzieliśmy - a podobno firma skrywa jeszcze kilka kart w rękawie. Dla przykładu, UE5 wspierać będzie sprzętowo napędzany ray tracing, o czym w prezentacji nie było ani słowa. Na razie możemy cieszyć się rzutem oka na to, co może zaoferować nowa generacja.
Tłumaczenie: Daniel Kłosiński, Eurogamer.pl