Czy gry na Xbox w 30fps mogą zadziałać w 60fps na następnej generacji?
Kwestia kompatybilności naprzód.
Wsteczna kompatybilność Xboxa One od Microsoftu jest dziś czymś zupełnie normalnym, ale nie możemy zapomnieć o skali tego osiągnięcia - nawet standardowy model Xbox One S ma możliwość prześcignąć oryginalnego Xboxa 360 zarówno pod względem wydajności CPU jak i GPU. Dzięki temu większość tytułów trzyma się znacznie bliżej swoich założeń w kwestii liczby wyświetlanych klatek na sekundę, niż miało to miejsce na konsoli, na której zostały oryginalnie wydane.
Ale o ile szybciej mogłyby działać gry z oryginalnego Xboxa 360, jeżeli narzucone przez programistów ograniczenie 30 fpsów, zostałoby usunięte? Czy możliwe jest dodanie w dzisiejszych grach dodatkowych trybów odblokowujących wydajność, które zostałyby wykorzystane w pełni dopiero po uruchomieniu na sprzęcie jutra?
Jest to temat, który zacząłem rozważać podczas testowania we wstecznej kompatybilności wydanej niedawno wersji gry Ghost Recon: Advanced Warfighter (w skrócie: GRAW) na Xbox One. Jest to tytuł wydany we wczesnych miesiącach życia Xbox 360, którego premiera odbyła się w marcu 2006 roku, czyli zaledwie kilka miesięcy po debiucie samej konsoli.
Tytuł ten na Xbox One X przez większość czasu działa w 60 klatkach na sekundę, co jest w rzeczy samej niezwykłe, ponieważ analizy wydajności wykazują dość jednoznacznie, że oryginalna gra działała w docelowo w 30 klatkach. Tak więc - co się tutaj wyprawia? Czy Microsoft eksperymentuje ze swoim emulatorem poprzez usuwanie założonych przez deweloperów ograniczeń w ilości wyświetlanych klatek na sekundę? Czy więcej tytułów pójdzie w ślady GRAW?
„Czy istnieją odpowiednie argumenty dla tego, żeby deweloperzy zamieszczali w grach dodatkowe opcje odblokowujące limity wyświetlanych klatek na sekundę?”
Na pierwszy rzut oka może się wydawać, że tak właśnie jest, jednak po bliższym spojrzeniu na to, w jaki sposób gra działa na Xbox 360, istnieje szansa, że emulator Microsoftu działa dokładnie tak samo jak zwykle. Z kolei duży wzrost wydajności GRAW jest czymś jednorazowym.
Podczas gdy ogromna większość rozgrywki na oryginalnym sprzęcie wydaje się wyświetlać w 30 klatkach na sekundę - lub często poniżej - czasem zdarzają się małe „czknięcia” w wydajności, które na moment uwalniają grę od założonego limitu 30 fps, co zazwyczaj idzie w parze z błędem rozrywania obrazu. Dodatkowa moc obliczeniowa dostępna w Xbox One X wydaje się zapewniać, że te rzadkie przypadki z Xbox 360 stają się normą, podczas gdy wymuszona przez emulator synchronizacja pionowa pracuje nad rozrywaniem ekranu.
Z drugiej strony, Xbox One S również jest w tym przypadku odblokowany, jednak obdarty z dodatkowej mocy CPU i (zwłaszcza) GPU wersji X, często znajduje się na „ziemi niczyjej”, działającej pomiędzy 40 a 50-cioma klatkami na sekundę. Tak bardzo jak gra jest przekształcona na najlepszej konsoli Microsoftu, warto podkreślić, że nie zawsze działa ona w perfekcyjnych 60 klatkach na sekundę - obszary o większej skali oraz przezroczystość alfa nadal mogą sprawiać problemy. Jest to także bardziej techniczna ciekawostka niż obowiązkowy tytuł we wstecznej kompatybilności - jest to dość prosta gra, a sterowanie, mówiąc delikatnie, jest podatne na lagi nawet przy 60 klatkach na sekundę.
Jeśli chodzi o to, jak pułap 60 fps jest możliwy na emulatorze, po tylko pozornym zniesieniu ograniczenia limitu 30 klatek - dość prawdopodobnym jest, że gra nie jest zbyt wielkim obciążeniem dla procesora: sztuczna inteligencja pozostawia wiele do życzenia, a środowisko jest słabo zagospodarowane. Jest to też typowy tytuł typu „cross-gen” (dosł. pomiędzy generacyjny) swoich czasów: GRAW wydane zostało również na PS2 i pierwszym Xboksie.
Jednak koncepcja uruchamiania gier ograniczonych na Xbox 360 do 30 fps z podwójną ilością klatek jest niezwykle kusząca. Należy zadać pytanie: czy istnieją odpowiednie argumenty dla tego, żeby deweloperzy zamieszczali w grach dodatkowe opcje odblokowujące limity wyświetlanych klatek na sekundę przeznaczone dla maszyn następnej generacji? Obecnie mamy kilka przykładów z ery Xboxa 360, które ilustrują zarówno plusy jak i minusy tego pomysłu.
Weźmy na przykład BioShock - oryginalną wersję na Xbox 360, a nie remaster. Oczywiście wersja ta zawiera domyślną blokadę do 30 klatek na sekundę, jednak istnieje możliwość jej wyłączenia. Dodatkowo istnieje możliwość wyłączenia synchronizacji pionowej, która rzekomo miała zaoferować opcjonalne doświadczenie w stylu PC. W efekcie wydajność gry była bardzo zmienna, a ciągłe rozrywania ekranu było nieco zniechęcające - jednak na Xbox One X duża część rozgrywki działa w zablokowanych 60 klatkach na sekundę - i jest to z pewnością najlepszy sposób na granie w tę konkretną grę.
Z drugiej strony, mamy Grand Theft Auto 4, które na Xbox 360 uruchamiało się domyślnie bez limitu wyświetlanych klatek na sekundę - z wydajnością, która czasami znacznie przekraczała wąskie gardła CPU i GPU na Xbox One X. W tym przypadku ograniczenie do 30 klatek na sekundę bardzo pomogłoby w dostarczeniu bardziej spójnego doświadczenia (oczywiście mam na myśli to, jak bardzo wprowadzenie limitu wyświetlanych klatek pomogło w osiągnięciu doskonałych wyników przez Red Dead Redemption).
Przechodząc dalej, prawdopodobnie istnieje argument, który skłoni Microsoft do usunięcia ograniczeń wydajnościowych dla istniejących już tytułów na sprzęcie następnej generacji. Niczym za sprawą cudu, klastry procesorów AMD Jaguar z rodziny Xbox One mogą już teraz przewyższać procesor Xenon znajdujący się w oryginalnym Xbox 360 - na przykład przy GTA4 w trybie odblokowanej wydajności. Jednak nowa fala maszyn Xbox zaoferuje prawdziwie pokoleniowy skok w mocy CPU, któremu towarzyszyć będzie znaczna poprawa możliwości GPU.
Jestem pewien, że znajdzie się wiele gier, które będą posiadać ograniczenia technologiczne uniemożliwiające grę w 60 klatkach na sekundę, ale pamiętajmy, że każdy tytuł back-compat przechodzi przez proces, podczas którego, na podstawie testów stuosobowego zespołu, do emulatora są wprowadzane wszelkie niezbędne poprawki. Jeżeli 60fps będzie działać, może być opcją w grze, podobną do opcji grafika/wydajność istniejącej w aktualnych, odświeżonych dla X, tytułach.
Idąc dalej, już poza Xbox 360, istnieje pewna interesująca decyzja, przed którą stają deweloperzy dzisiejszych tytułów - czy rozważą oni wprowadzenie dodatkowych funkcji z myślą o kompatybilności naprzód już tu i teraz? Do pewnego stopnia ma to już miejsce. Weźmy pod uwagę coraz szersze wsparcie dla dynamicznego skalowania rozdzielczości (skrót ang. DRS - Dynamic Resolution Scalling). Wraz z premierą Xbox One X zaobserwowaliśmy, że istniejące wtedy gry, takie jak np. Call of Duty: Infinite Warfare, Doom, Wiedźmin 3 czy Halo 5, czerpią ogromne korzyści z dodatkowej mocy GPU poprzez podkręcenie wydajności i zwiększenie rozdzielczości - i to jeszcze zanim zostały wydane dedykowane łatki dla Xbox One X.
Jednak pytanie brzmi - czy dzisiejsze gry działające w 30 klatkach na sekundę, również mogą zawierać opcje odblokowujące wydajność - tak jak BioShock na Xbox 360? Kiedyś twórcy z Irrational Games nie domyśliliby się, że ich gra będzie działać znacznie lepiej na sprzęcie następnej generacji. Deweloperzy pracują obecnie z wiedzą, że ich gry będą miały kiedyś dostęp do większej mocy obliczeniowej przyszłych konsol. Być może więc istnieje szansa na opcje odblokowujące wydajność.
Należy jednak pamiętać o tym, że niektóre tytuły są „zakorzenione” w 30 fps - po prostu zostały tak zaprojektowane. Na przykład Horizon Zero Dawn na PS4 Pro posiada tryb wydajności, który nie znosi blokady liczby wyświetlanych klatek na sekundę, ale działa tak, aby zapewnić absolutnie stabilną, bezkompromisową blokadę do docelowego pułapu wyświetlanych klatek na sekundę.
Technologia studia Guerrilla wykorzystuje wolny czas przetwarzania CPU, mieszczący się w budżecie 33,3 ms na klatkę, w celu wcześniejszego przesyłania informacji na temat otwartego świata gry, a zniesienie blokady 30 fps mogłoby nieść za sobą nieprzewidziane konsekwencje na przestrzeni całego silnika gry. Biorąc pod uwagę skok generacyjny mocy CPU, nie oznacza to, że gra w 60 klatkach nie jest możliwa - jednak wydaje się dość prawdopodobne, że wymagałoby to dodatkowej pracy ze strony dewelopera - która prawdopodobnie zostałaby zaprezentowana na zasadzie dedykowanej łatki.
Niezależnie od tego, wyniki osiągnięte przez Ghost Recon Advanced Warfare są fascynujące jako potencjalny scenariusz „co by było gdyby”, a dzięki pracy Microsoftu, który popycha swoją kompatybilność wstecz w nowe, ekscytujące rejony, możliwym jest, że 9-krotne zwiększenie rozdzielczości, które widzieliśmy w niektórych, wybranych tytułach z 360 ulepszonych na potrzeby X, może kiedyś ewoluować w 2-krotne zwiększenie tymczasowej rozdzielczości na sprzęcie nowej generacji.
Jednak odpowiedź na pytanie, czy deweloperzy zaangażują się w wykonanie dodatkowych opcji kompatybilności naprzód w dzisiejszych grach, poznamy w przyszłości. Tryby odblokowanej wydajności - takie jak na przykład w Wiedźminie 3 - oferują interesującą opcję w dzisiejszych grach, jednak czy naprawdę mogą one dostarczyć jeszcze więcej na sprzęcie, który nadejdzie w ciągu kilku najbliższych lat?