Skip to main content

Jakiego PC potrzeba, by Batman: Arkham Knight działał płynnie?

Na poziomie konsol - lub lepiej.

Czy możliwe jest osiągnięcie 60 klatek na sekundę w Batman: Arkham Knight na PC, przy jakiejkolwiek rozsądnej rozdzielczości? Czy gra jest w stanie dotrzymać kroku ograniczonym do 30 FPS konsolom na sprzęcie, na który nie trzeba wydać majątku? Deweloperzy z Rocksteady i Iron Galaxy pracują obecnie nad znaczącym poprawieniem wyjątkowo nieudanej konwersji, a sam tytuł wycofano ze sprzedaży. Ale co mogą zrobić osoby, które po prostu muszą zagrać w nowe przygody Batmana?

Społeczność robi swoje, publikując między innymi dogłębne spojrzenie na dostępne w plikach konfiguracyjnych zmienne, oferujące usprawnienia wydajności. Nadal mamy jednak do czynienia ze spadkami poniżej 40 FPS, który w niczym nie przypomina stabilności wersji konsolowych. Osoby niewyczulone na wahania klatek mogą skorzystać na radach ze wspomnianego poradnika, ale jeśli tytuł mógłby zostać naprawiony za pomocą kilku zmian w plikach gry, to można zakładać, że dawno by się tak stało. W końcu pomniejsze poprawki, jak przywrócenie globalnego cieniowania i efektu deszczu na teksturach, przywrócono już w pierwszej łatce z 27 czerwca.

Arkham Knight ma duże problemy na PC, wywodzące się najpewniej z mało optymalnego podejścia do zarządzania pamięcią. Na konsolach deweloperzy mają 5 GB pamięci, do przeznaczenia na rozgrywkę i grafikę. Na PC zasoby te są podzielone na systemowy RAM i VRAM z karty graficznej. Zebrane dowody sugerują, że tytuł nie radzi sobie z dostatecznie szybkim przenoszeniem danych pomiędzy jedną i drugą pulą pamięci, wykazując kłopoty na kartach wyposażonych w mniej niż 2 GB VRAM (co widoczne jest zwłaszcza na sprzęcie AMD). Są też inne niedoróbki: wysokie wymagania stawiane procesorowi pomimo jego małego wykorzystania czy przezroczyste tekstury (dym, wybuchy i tak dalej), obciążające GPU w stopniu większym niż oczekiwany.

Pomimo tego, z naszych testów wynika, że wydajność działania i wygląd grafiki Arkham Knight na PC może dorównać lub przekroczyć poziom konsol - oczywiście, w zależności od posiadanej konfiguracji. Gra desperacko potrzebuje radykalnych aktualizacji, ale może zadziałać na znośnym poziomie na współczesnym komputerze do gier. Trzeba tylko zacisnąć zęby i zaakceptować 30 klatek na sekundę.

Batman: Arkham Knight ze standardową blokadą 30 FPS i ta sama sekwencja z adaptacyjną synchronizacją Nvidii. Zielone „kolce” pokazują różne czasy renderowania klatki - 16, 33, 50 ms i więcej. To tryb standardowy, wbudowany w grę. Teraz spójrzmy na czerwoną linię, oznaczającą adaptacyjną synchronizacją Nvidii. Widać stałe 33 ms, tak jak powinno być, z drobnymi tylko wychyleniami.

Blokada 30 FPS jest dobrze wprowadzona na konsolach. Koncept jest prosty: po nowej klatce następuje duplikat, a potem cykl jest kontynuowany. Każda klatka powinna być widoczna przez 33 ms - dwa odświeżenia ekranu pracującego w 60 Hz. W rzadkich okazjach, gdy klatka nie jest gotowa na czas, gra włącza synchronizację pionową i wyświetla klatkę, gdy tylko jest gotowa. To następuje podczas odświeżania ekranu, wywołując tearing. Na PlayStation 4 i Xbox One problem ten jest ledwo zauważalny.

Wersja PC została zaprogramowana tak, by prezentować 30 klatek na sekundę, ale gra ma w poważaniu, jak są one wyświetlane. Po włączeniu synchronizacji pionowej klatki dostarczane są co 16, 33, 50 ms, a czasem nawet w dłuższych odstępach. Nawet jeśli widzimy 30 FPS, to brak stabilności oznacza, że całość wygląda dużo gorzej. Wyłączenie synchronizacji może zwiększyć płynność, ale wtedy jesteśmy skazani na ciągły tearing.

Rozwiązanie? Po pierwsze, należy wyłączyć wymuszoną blokadę 30 FPS. Przechodzimy do folderu z grą (steamapps/common/Batman Arkham Knight/BMGame/Config) i znajdujemy plik BmSystemSettings.ini. Tutaj wyszukujemy wpis „MaxFPS=30.000000” i zamieniamy go na „MaxFPS=120.000000”. Dalej ułatwione zadanie mają posiadacze kart Nvidii. Włączamy Panel Sterowania Nvidia, następnie „Zarządzanie ustawieniami 3D” w liście „Ustawienia 3D”. Po prawej wybieramy zakładkę „Ustawienia programu”, na rozwijanej liście poniżej wybieramy Arkham Knight. W polu „Synchronizacja pionowa” wybieramy „Adaptacyjny (częstotliwość odświeżania o połowę mniejsza)”.

Porównanie Batman: Arkham Knight - dwie wersje PC z synchronizacją Nvidii i odsłona PS4Zobacz na YouTube

Takie rozwiązanie przypomina to zastosowane na konsolach - osiągamy pełne 30 FPS, a tearing pojawia się tylko, gdy renderer nie nadąża z wygenerowaniem kolejnej klatki. To jedyne rozwiązanie zbliżające grę do poziomu 30 FPS z konsol, bez względu na rodzaj dysku twardego. Notujemy zadowalające rezultaty na naszym budżetowym Core i3 4130 z GTX 750 Ti, ale już Core i5 w połączeniu z GTX 960 dorównuje lub nieco wyprzedza PS4 i możemy do tego włączyć dwa z czterech efektów GameWorks.

Ale granie na PC to przede wszystkim skalowanie - chcemy zobaczyć korzyści wynikające z zakupu droższego sprzętu. Jeśli jednak jesteśmy ograniczeni do 30 FPS, to gdzie szukać tych korzyści? Kluczowa jest oczywiście rozdzielczość. Zapas mocy GPU wykorzystać można do renderowania obrazu w 1440p lub nawet 4K, o ile nasz sprzęt podoła. Posiadaczy kart Nvidii skusić może opcja DSR, czyli renderowanie w wyższej rozdzielczości i automatyczne skalowanie do natywnego rozmiaru ekranu. To pozwala poprawić jakość obrazu, zwłaszcza w sferze wygładzania krawędzi. Niestety, z naszych testów wynika, że DSR rujnuje efektywność adaptacyjnej synchronizacji pionowej.

Dodać można efekty Nvidia GameWorks, takie jak rozszerzona symulacja dymu czy fruwające kawałki gazet. Co dziwne, te opcje wydają się działać w wariancie DirectX 10, w wyniku czego ponownie cierpi adaptacyjna synchronizacja pionowa. Bez problemu można za to włączyć rozszerzoną symulację deszczu i świetlne słupy, a dobra wiadomość jest taka, że efekty te zadziałają także na sprzęcie AMD. Są też złe wieści: koszt GPU nie przekłada się na znaczącą poprawę grafiki.

Testy wydajności w rozdzielczości 1440p, na GTX 960 i 970. W drugim przypadku mamy jeszcze spory zapas mocy, nawet przy rozszerzonym deszczu i słupach światła.Zobacz na YouTube

Co z posiadaczami sprzętu AMD? Wymagania sugerują minimum 3 GB pamięci VRAM dla rozdzielczości 720p (!). Nasze testy na różnych Radeonach oferują nieco bardziej optymistyczną rzeczywistość, ale nadal nie brakuje fundamentalnych problemów. Po pierwsze, nasz ulubiony R9 280 3 GB poradził sobie z grafiką 1080p na ustawieniach konsolowych, z odpowiednim zapasem do włączenia rozbudowanego deszczu i słupów światła. Jednak już R9 280 (w wersjach 2 GB i 4 GB) generowały najgorsze zacinanie, jakie widzieliśmy. Wystarczy spojrzeć na obrazek poniżej, pochodzący z gry z wyłączoną blokadą i synchronizacją. R9 380 ma duże problemy, podobnie jak poprzednik na tej samej architekturze - R9 285.

Wahania i zacinanie się są także zauważalne - choć mniej katastrofalne - na R7 265, bazującym na układzie Pitcairn, do znalezienia także w HD 7850, 7870, R9 270, 270X i 370. Ten sam poziom stutteringu obejmuje również 260X. Podejrzewamy, że problemem jest 2 GB pamięci VRAM, choć w przypadku R9 380 i odpowiedników z 4 GB dzieje się coś znacznie gorszego. Przetestowaliśmy też R9 290X na układzie Hawaii, obecnym też w 290, 390 i 390X. Tutaj rezultaty nie były złe, zapewne dzięki połączeniu wystarczających mocy obliczeniowych z 4 GB pamięci.

Niestety, na kartach AMD nie działa żadna forma naszego tricku z adaptacyjną synchronizacją pionową. To nie opcja sterownika, choć jest obecna w zewnętrznym narzędziu - Radeon Pro. Nie udało nam się jednak włączyć 30 Hz w grze. Szkoda, ponieważ to jedyny sposób na uzyskanie stabilnej płynności, na równi z konsolami.

Test pod obciążeniem, czyli Batmobil na GTX 960 2 GB i parę Radeonów - R9 280 3 GB, oraz R9 390 w wersjach 2 GB i 4 GB. Zacinanie jest koszmarne na 390-tkach, ale już R9 280 zapewnia zadowalające wrażenia. Szkoda, że nie można włączyć ograniczenia FPS, jak na sprzęcie Nvidii.

Wyraźnie widać, że Batman: Arkham Knight na PC pozwala osiągnąć wydajność porównywalną z konsolami, ale potrzebne są do tego lepsze podzespoły - takie, po których można oczekiwać więcej niż rozgrywkę w 30 FPS. Ponadto, osiągnięcie stałego 60 FPS nie wchodzi w grę (bez powodzenia próbowaliśmy nawet podkręconego Core i7 4790K z Titan X 12 GB). Na tym właśnie polega problem. Jedną z zalet grania na komputerach jest możliwość skalowania i dostosowania rozgrywki do własnych możliwości i potrzeb. Arkham Knight to jawna obraza dla tego konceptu: jest zbyt wymagający dla procesora, wyjątkowo wybredny w kwestii kart graficznych i ogranicza możliwość skalowania na różne podzespoły.

Co czeka teraz Warner Bros., Rocksteady i Iron Galaxy? Na poziomie procesora trzeba dokładnie przemyśleć sposób przesyłu danych z VRAM do pamięci systemowej. Należy przygotować szerokie wsparcie dla szeregu urządzeń - w tym kart AMD z 2 GB pamięci - i dokładnie przetestować tytuł na różnych konfiguracjach, by nie powtórzyły się problemy z R9 285 i 380. Obiecano nam też więcej opcji graficznych w menu. Nie wiemy jeszcze, co to oznacza, ponieważ modele i tekstury z konsol najwyraźniej prezentują już najwyższy dostępny poziom, ale mamy przynajmniej nadzieję na lepsze filtrowanie tekstur (zablokowane obecnie na anizotropowym 4x) i więcej opcji wygładzania krawędzi. Na koniec, jeśli deweloperzy zdecydują się pozostać przy blokadzie 30 FPS, należy dopracować synchronizację klatek.

Są też powody do optymizmu. Jeśli udało nam się udowodnić cokolwiek, to na pewno zademonstrowaliśmy, że podstawowe założenia konwersji są gotowe - coś na wzór wersji beta. Całość jest kompletna i funkcjonująca, ale tylko na określonym sprzęcie. Oddelegowanie tak ważnej pracy do zewnętrznego studia wydaje się być błędem, ale dobra wiadomość jest taka, że teraz odpowiedzialność przejęło już Rocksteady. W Arkham City były pewne problemy z kodem DirectX 11, ale ogólnie poprzednie odsłony serii działały na PC bardzo sprawnie. Patrząc jednak na obecne problemy nowego tytułu, upłynie jeszcze sporo czasu, zanim Arkham Knight będzie produktem dopracowanym. Tymczasem możemy mieć tylko nadzieję, że Warner Bros. i inni wydawcy wyciągną z tego zamieszania odpowiednie wnioski.

Zobacz także