Zeszły rok był katastrofą dla gier na komputery PC – oto jak wszystko musi się zmienić

Zeszły rok był katastrofą dla gier na komputery PC – oto jak wszystko musi się zmienić

Węzeł źródłowy: 1893511

Rok 2022 był trudnym rokiem dla portów PC. Pomiędzy jąkającymi się problemami z wydajnością a irytującymi problemami z doświadczeniem użytkownika, jako recenzent Digital Foundry byłem prawie załamany. Aby rozpocząć rok z nowym planem, pomyślałem, że dobrym pomysłem byłoby sporządzenie listy kontrolnej najlepszych praktyk w tworzeniu portu na PC. Tworząc tę ​​listę zaleceń i zakazów, oparłem się na swoim doświadczeniu, przeglądając setki tytułów w ciągu czterech lat pracy w Digital Foundry.

Lista zdecydowanie nie jest wyczerpująca, ponieważ staram się skupić na ważnych podstawowych aspektach portu PC. Istnieje wiele innych najlepszych praktyk, które mogę zasugerować poza tym – na przykład brak programów uruchamiających z programów uruchamiających. Brak logowania do innych platform internetowych w celu uruchomienia gry na Steamie byłby kolejnym. Chciałbym również zobaczyć pewnego rodzaju ogólnobranżową standaryzację w przedstawianiu zalecanych specyfikacji, które faktycznie informują potencjalnego nabywcę o rodzaju systemu, którego będą potrzebować, aby dobrze uruchomić grę – obecny system jest bez znaczenia bez kontekstu rozdzielczości i oczekiwania dotyczące wydajności. Oczywiście jest wiele rzeczy do omówienia – ale skupiam się tutaj po prostu na dostarczeniu mocnego, kompetentnego portu na PC.

Niektóre z moich sugestii są bardziej rygorystyczne technicznie, inne to nisko wiszące owoce: ale co najważniejsze, wszystkie z nich są wykonalne i mam na ich poparcie przykłady. Polecam również obejrzenie wideo – kiedy wszystko łączy się w dobrze wdrożonym porcie PC, to jest jak poezja. Na przykład menu ustawień Days Gone jest zdumiewająco dobre. Ale dla naszego pierwszego punktu zaczniemy od dużego.

Alex Battaglia przedstawia swoje sugestie dotyczące poprawy stanu portów PC po tragicznym 2022 roku.

1. Wyeliminuj zacinanie się kompilacji shaderów

Być może byłeś świadomy mojego #StutterStruggle w ciągu ostatniego roku. Jest to sytuacja, w której bez względu na to, jak potężny jest twój sprzęt komputerowy, gra jest regularnie przerywana przez zacinanie się, którego nie ma w konsolowych wersjach tej samej gry. Jedną z największych zalet platformy PC jest różnorodność sprzętu – ale oznacza to, że programiści nie mogą dostarczać wstępnie skompilowanego kodu shaderów ze swoimi grami w taki sam sposób, jak robią to na konsolach. To, co dzieje się w szerokiej gamie gier na PC, polega na tym, że te shadery są kompilowane podczas gry, gdy są potrzebne. Gdy tak się dzieje, gra się zawiesza — od 30 ms do pełnej sekundy pauzy, w zależności od gry i mocy procesora. Częstotliwość tych zacięć jest zwykle niedopuszczalna w tytułach, których dotyczy problem.

Można to wyeliminować, a to, jak to osiągnąć, nie jest zbyt ważne, szczerze mówiąc. Shadery można skompilować z etapem wstępnej kompilacji, jak widać w kolekcji Uncharted: Legacy of Thieves na PC, co sprawia, że ​​trzeba czekać do 10 minut na potężnym procesorze, a nawet dłużej na procesorze średniej klasy. Shadery można również kompilować asynchronicznie w tle na procesorze, jak widać w Star Citizen i Horizon Zero Dawn. Gra może również wykorzystywać kombinację pre-kompilacji i asynchronicznej kompilacji, jak Spider-Man Remastered. Chodzi o to, że należy zrobić wszystko, aby przygotować shader, ogrzewając go w jakiś sposób, zanim będzie potrzebny.

Ta pozycja na liście zdecydowanie wymaga pewnego technicznego rygoru i przemyślenia, ale jest to prawdopodobnie najważniejsza pozycja na tej liście w tej chwili, biorąc pod uwagę, jak katastrofalna była ostatnio sytuacja. Jeszcze jedna wskazówka dotycząca kompilacji modułu cieniującego jest taka, że ​​jeśli etap przedkompilacji jest długi i martwisz się złym doświadczeniem użytkownika podczas oczekiwania, zrób krok prekompilacji przerywany lub opcjonalny, z ostrzeżeniem, że użytkownik będą się jąkać, jeśli zdecydują się nie czekać na prekompilację. Modern Warfare 2 pozwala użytkownikom anulować i ponownie skompilować shadery, kiedy tylko chcą, klikając przycisk – i to jest świetny projekt.


Zacina się kompilacja shaderów w Kena: Bridge of Spirits. Eksplozja to nowy efekt, którego wcześniej nie widziano, więc nowy kod cieniowania jest generowany w połowie rozgrywki, co tutaj powoduje zamrożenie na prawie 200 ms.

2. Dostarcz responsywne wizualnie opcje graficzne

Menu ustawień to kluczowa część portu PC, ale dla większości graczy jest to również kompletna tajemnica. Co właściwie robią opcje? Czym dokładnie jest okluzja otoczenia? Ile wydajności oszczędzam, zmieniając opcje? Krok naprzód polega na włączeniu menu graficznego, które zapewnia responsywne wizualne informacje zwrotne. Jak wspomniano wcześniej, menu graficzne w Days Gone to arcydzieło – prawdopodobnie szczyt projektowania graficznego menu.

Możesz zmieniać opcje w menu, gdy świat gry jest nadal renderowany za menu, aw górnym rogu można zobaczyć wpływ zmian na wydajność w czasie rzeczywistym. Naprawdę polecam naśladowanie tego stylu menu graficznego – ważne jest, aby mieć menu takie jak to lub bardzo podobne do tego w Spider-Man Remastered, ponieważ pozwala użytkownikowi zobaczyć zmiany w prezentacji graficznej w czasie rzeczywistym, więc mogą łatwo zobaczyć wpływ na efekty wizualne i wydajność. Konieczność wchodzenia i wychodzenia z menu lub, co gorsza, ponownego ładowania gry po zmianie ustawień sprawia, że ​​znacząca zmiana ustawień jest prawie niemożliwa.

Jeśli jest to problematyczne do wdrożenia, istnieją alternatywy: dołącz opisowy tekst, wskaźniki wizualne, a nawet wskazówki dotyczące wydajności, które podzespoły komputera są najbardziej obciążane przez zmieniane ustawienia. Gears 5 robi to na PC i daje świetny wgląd w to, co robią opcje graficzne. Wielu użytkowników uważa, że ​​wydajność gry jest w pełni ograniczona przez posiadany procesor graficzny, podczas gdy w rzeczywistości procesor i ilość używanej pamięci wideo mogą być równie ważne dla osiągnięcia dobrej wydajności.


Interaktywne menu ustawień graficznych, które pokazują w trakcie gry, jakie są zmiany – i koszt wydajności – to krok naprzód. Menu Days Gone to arcydzieło.

3. Uwzględnij rozsądną, opartą na konwencji nawigację po menu

Tysiące gier w ciągu ostatnich 30 lat na PC miało menu iw tym czasie powstało wiele konwencji – i ważne jest, aby trzymać się tego ustalonego „języka” nawigacji. Na przykład ESC lub Backspace powinny zawsze wycofywać cię ze strony menu. Klawisze strzałek, a nawet WASD powinny umożliwiać poruszanie się po menu bez użycia myszy. Alt+ F4 powinien zawsze zamykać grę na pulpicie. Takich konwencji jest oczywiście więcej, ale sedno polega na tym, że użytkownicy powinni mieć możliwość szybkiego sterowania menu gry za pomocą myszy lub klawiatury w samotności i powinni korzystać z intuicyjnych, ustalonych elementów sterujących.

4. Nie zagnieżdżaj nadmiernie menu

Opcje graficzne, dostosowywanie sterowania lub inne często przełączane rzeczy powinny mieć maksymalnie trzy menu, ale najlepiej tylko jedno lub dwa. Na przykład, jeśli chcesz zmienić jakość efektu wizualnego, nie musisz przechodzić do opcji, następnie opcji wideo, a następnie poszczególnych podstron dla każdego rodzaju opcji graficznej. Zamiast tego powinno po prostu przejść do opcji, opcji wideo, a następnie zobaczyć większość, jeśli nie wszystkie, opcji graficznych. Jeśli to możliwe, unikaj także przewijania ekranów menu opcji. Przewijanie może być nieco powolne i czasami ukrywa opcje. Dobry przykład menu bez przewijania widać w Arma 3. Ta gra unika przewijania, używając zarówno lewej, jak i prawej strony ekranu oraz mniejszego rozmiaru tekstu – wykorzystuje powierzchnię ekranu. Różni się to znacznie od opcji wyjustowanych do lewej z dużym tekstem, które widzimy w wielu portach na PC.

5. Częstotliwość odświeżania i rozdzielczość powinny być osobnymi opcjami

Lista rozdzielczości i częstotliwości odświeżania powinna przeskanować dostępną listę rozdzielczości i częstotliwości odświeżania z samego systemu Windows. Zbyt często ładuję grę tylko po to, aby stwierdzić, że częstotliwość odświeżania w grze nie jest nawet wymieniona i brakuje wielu rozdzielczości. Ponadto użytkownik powinien kontrolować, kiedy zmienia się częstotliwość odświeżania, stosując ją: albo wycofując się z menu, albo naciskając „zastosuj”. Nie stosuj automatycznie rozdzielczości po jej zmianie: na przykład w ostatnich grach firmy Capcom, jeśli przesuniesz wskaźnik myszy poza opcję rozdzielczości, zmieni się ona automatycznie na ostatnio wybraną, nawet jeśli tego nie chcesz.

Dobrym kontrprzykładem jest gra Marvel's Spider-Man Remastered, która robi to w bardziej logiczny sposób – opcja rozdzielczości jest oddzielna i pokazuje każdą pojedynczą rozdzielczość wymienioną przez system Windows, a następnie jest inna opcja całkowicie zmieniająca częstotliwość odświeżania wybranej rozdzielczość – rozdzielczość jest stosowana tylko wtedy, gdy użytkownik sobie tego życzy. Gry, które ograniczają rozdzielczość i opcje odświeżania do bieżących ustawień pulpitu systemu Windows, to szczególny problem, który należy wyeliminować.


Marvel's Spider-Man Remastered robi to dobrze – niezależne opcje rozdzielczości i częstotliwości odświeżania… oraz pełna kontrola nad trybami okienkowymi i pełnoekranowymi.

6. Dołącz opcję pola widzenia (FOV).

Wąskie pole widzenia jest często spotykane w grach na konsole, aby stworzyć klaustrofobiczny nastrój lub zaoszczędzić na wydajności – i może dosłownie przyprawić użytkowników komputerów PC o mdłości. Opcja pola widzenia sprawia, że ​​gra jest naprawdę grywalna dla wielu użytkowników, gdzie domyślne FOV mogło być zbyt wąskie. Po raz kolejny system menu Days Gone jest przyjemny w użyciu – gdy dostosujesz zmienną FOV, widok w tle zmienia się w czasie rzeczywistym, pozwalając użytkownikowi dostosować się do swoich preferencji.

7. Uwzględnij zmienne współczynniki proporcji i liczbę klatek na sekundę

Ogólnie rzecz biorąc, staje się to powszechną praktyką, ale wciąż istnieją gry, które nie uwzględniają ogromnej różnorodności typów wyświetlaczy dostępnych dla użytkowników komputerów PC. Nie każdy gracz PC będzie korzystał z monitora 16:9 z częstotliwością odświeżania 60 Hz lub 120 Hz. Wielu będzie grać na ultraszerokich monitorach lub na monitorach, które mogą pracować z częstotliwością do 240 Hz lub nawet wyższą. Obsługa tych współczynników proporcji i częstotliwości odświeżania oznacza zapewnienie tym użytkownikom komfortowych wrażeń, których oczekują od swojego sprzętu.

Ważniejsze jest to, że PC to platforma ze zmiennym sprzętem i aby właściwie obsługiwać PC, nic nie powinno być kodowane, aby było stałym doświadczeniem, jak ma to miejsce w przypadku konsol. Użytkownicy będą chcieli grać w gry z dowolną liczbą klatek na sekundę lub współczynnikiem proporcji obrazu, jaki sobie wyobrazisz: na przykład uwielbiam grać w nowoczesne gry na monitorze CRT 4:3. Tak więc wiązanie rzeczy takich jak logika gry z liczbą klatek na sekundę lub interfejs użytkownika ze stałymi siatkami pikseli jest kategorycznie złym pomysłem.

8. Dołącz opcje synchronizacji pionowej o połowę, trzecią i czwartą ze stałym tempem klatek

Wiele gier ma ograniczenia liczby klatek na sekundę, ale często mają one bardzo słabe tempo klatek przy włączonej synchronizacji pionowej, gdzie średnia liczba klatek na sekundę może być wybraną liczbą, ale czasy klatek składające się na tę liczbę klatek na sekundę są niespójne, prowadząc do wizualnie kiepskich wrażeń z niespójnym opóźnieniem.

Dobry przykład, jak to zrobić poprawnie, można znaleźć w Cyberpunk 2077 – tutaj jest osobna opcja frame-limiter z dowolnym ograniczeniem liczby klatek na sekundę, ale są kompleksowe v-sync, synchronizacja pionowa o połowę częstotliwości odświeżania, synchronizacja o jedną trzecią synchronizacja pionowa i synchronizacja pionowa z częstotliwością kwartalną. Dzięki takiej opcji użytkownicy mogą uzyskać idealne tempo klatek, gdy ograniczają liczbę klatek na sekundę, i mogą robić takie rzeczy, jak granie w 40 klatkach na sekundę przy 120 Hz, co jest zabójczą funkcją dla tych, którzy szukają wyższej liczby klatek na sekundę niż 30, ale chcą podkręcić ustawienia.


Regulowane opcje synchronizacji pionowej ze stałym tempem klatek pozwalają na takie rzeczy – maksymalnie uruchomiony Cyberpunk 2077 ze stałą prędkością 40 klatek na sekundę (25 ms na klatkę) w kontenerze 120 Hz.

9. Dołącz wiele poziomów jakości dla ciężkich efektów

Proste włączanie/wyłączanie zaawansowanych funkcji, takich jak ray tracing, nie wystarczą: chciałbym zobaczyć niskie, średnie i wysokie opcje dla każdego efektu RT. Przykład, jak tego nie robić, można znaleźć w grze Wiedźmin 3 Complete Edition na PC, gdzie dostępne są tylko opcje włączania i wyłączania różnych efektów ray tracingu. Doprowadziło to do tego, że użytkownicy tworzyli niestandardowe ustawienia modów dla RTXGI występującego w grze, aby obniżyć jego jakość, aby działał lepiej na procesorach graficznych o niższej specyfikacji obsługujących RT. Jest to oczywisty przykład opcji, która powinna znajdować się w menu graficznym. Sterowanie to kolejny przykład, w którym optymalizacje konsoli – odbicia szachownicy RT – nigdy nie przedostają się na PC. Funkcja, która działa na konsolach, niezmiennie sprawdza się również na PC.

Podobnie efekty RT również powinny być skalowane, aby dostosować się do wysokiej klasy procesorów graficznych – przykład, jak tego nie robić, można znaleźć w grach Capcom na silniku RE, gdzie najwyższe ustawienie ray tracingu w grze ma dziwacznie niską jakość. Marvel's Spider-Man Remastered robi to dobrze: możesz kontrolować rozdzielczość efektu odbicia RT, możesz kontrolować jakość modeli w odbiciach RT, a co najważniejsze, możesz także kontrolować odległość i gęstość obiektów objętych ray tracingiem przeciwko, co pozwala użytkownikom kontrolować wpływ ray tracingu na wydajność ich procesora. Możliwość kontrolowania zakresu i gęstości BVH ma kluczowe znaczenie we współczesnej epoce, w której szybkość procesora nie rośnie tak szybko, jak miało to miejsce w przeszłości.

10. Dołącz funkcje konsoli, takie jak dynamiczne skalowanie rozdzielczości

Dynamiczne skalowanie rozdzielczości nie jest niemożliwe na PC – istnieje wiele przykładów dobrego DRS na PC. Titanfall 2 ma jeden z najlepszych dynamicznych skalerów rozdzielczości i jest kompletny na PC, działając tak samo jak wersja na konsole. Jest to gra DX11, co oznacza, że ​​Respawn zaimplementował na PC niewiarygodnie wysokiej jakości schemat dynamicznej rozdzielczości, mimo że technicznie miał mniejszą kontrolę nad dostępnymi zasobami komputera niż DX12 lub Vulkan. Jeśli w tym scenariuszu dostępna jest tak wysokiej jakości implementacja, nie ma dobrej wymówki, aby konsolowa wersja gry miała DRS, ale wersja na komputery osobiste go pominęła.


System DRS Titanfall 2 został przeniesiony z wersji konsolowych, ale dodał funkcjonalność na PC. To doskonały przykład implementacji tej funkcji – a jej jakość w rozgrywce jest fantastyczna.

11. Dołącz HDR i dźwięk przestrzenny, jeśli wersje konsolowe je obsługują

Nie każdy komputer jest podłączony do standardowego monitora biurkowego, a użytkownik ma na sobie słuchawki – wiele osób używa swoich komputerów z telewizorami z zestawami kina domowego, w których HDR i dźwięk przestrzenny są dominujące. Podstawowa zasada brzmi – jeśli tworzysz coś na konsoli, rób to na PC.

12. Dołącz ustawienia równoważne z konsolą jako opcję

Jeśli gra jest na konsoli i ma dostosowane ustawienia konsoli, aby działała tam dobrze, dołącz również łatwe do zidentyfikowania ustawienie „konsoli” na komputerze. Niedawny port God of War na PC zrobił to naprawdę dobrze: tam ustawienia konsoli nazywane są „oryginalnymi”, a gra domyślnie uruchamia się z tymi ustawieniami. Jest to bardzo sprytne, ponieważ ustawienia wybrane dla wersji gry na konsole zazwyczaj oferują wystarczająco dobry wygląd wizualny, aby zapewnić akceptowalną wydajność.

Moje zoptymalizowane przewodniki po ustawieniach często kończą się generowaniem niemal identycznych ustawień, z którymi działają wersje konsolowe. Opcje graficzne gry powinny w przejrzysty sposób eksponować ustawienia konsoli. Deweloperzy wybierają ustawienia równoważne z konsolami, aby uzyskać najlepszy zwrot za każdą złotówkę w systemie klasy średniej, więc dlaczego nie zaoferować korzyści płynących z tej mądrości również graczom na PC? Ustawienia te stanowią również doskonały punkt wyjścia dla użytkowników komputerów PC do dostosowania ich w oparciu o możliwości ich własnego sprzętu.

13. Obsługuje wszystkie główne technologie rekonstrukcji obrazu

Każdy producent GPU ma własną technikę rekonstrukcji obrazu: Nvidia ma DLSS, Intel XeSS, a AMD FSR2. Każdy z nich działa najlepiej na odpowiednim sprzęcie i wszystkie używają podobnych wejść, gdy są podłączone do silnika gry. W 2023 roku nie powinno być do zaakceptowania, aby gra uruchamiała się z obsługą tylko jednej z tych technik rekonstrukcji obrazu, a innych nie. I naprawdę nie sądzę, aby miało to znaczenie, który dostawca GPU sponsoruje grę: tytuł sponsorowany przez AMD powinien nadal obsługiwać XeSS i DLSS, podczas gdy nie ma powodu, dla którego tytuł obsługiwany przez Nvidię nie powinien obsługiwać XeSS lub FSR2 – zwłaszcza, że ​​wciąż jest wiele użytkowników kart graficznych z serii GTX 900 i GTX 1000, którzy mogą korzystać z tych technologii.

Mając to na uwadze, rozczarowujące jest to, że protokół Callisto jest dostarczany tylko z FSR2, gdy Unreal Engine obsługuje wszystkie technologie skalowania. Równie frustrujące jest to, że A Plague Tale: Requiem zapewnia obsługę DLSS tylko wtedy, gdy programista o jakości Asobo może z łatwością dostosować podobne technologie. Tym, co łączy te gry, jest to, że naprawdę mocno naciskają na grafikę – i każdy rodzaj technologii akceleracji, która otwiera drzwi do płynniejszej wydajności, powinien zostać przyjęty.


Integracja zarówno FSR2, jak i DLSS2 w grach obsługujących skalowanie w górę rekonstrukcji obrazu powinna być oczywista – i obejmować również XeSS firmy Intel. Są to zabójcze funkcje, których nie należy ograniczać do implementacji jednego dostawcy procesorów graficznych.

Jak powiedziałem na początku tego artykułu, rok 2022 był naprawdę tragicznym rokiem dla gier na PC, w którym ja i zespół doszliśmy do punktu, w którym obawialiśmy się pojawienia się nowego portu na PC. Elden Ring przybył w dość katastrofalnym stanie, wiele tytułów Unreal Engine 4 dotarło do nas z nieznośnymi problemami z jąkaniem, których kulminacją było pojawienie się dosłownie niegrywalnej wersji The Callisto Protocol.

Przedstawiam te sugestie w nadziei, że profil Digital Foundry może wpłynąć na zmiany – i żeby być uczciwym, pojawiły się pewne pozytywne oznaki. Protokół Callisto na PC nadal ma poważne problemy z wykorzystaniem procesora, ale zacinanie się należy już do przeszłości dzięki kompilacji shaderów dodanej do gry po premierze, dokładnie tak, jak sugerowałem w pierwszym punkcie powyżej. Inne tytuły UE4, takie jak Sackboy: A Big Adventure i High on Life, również otrzymały aktualizacje popremierowe, które próbowały rozwiązać problemy z kompilacją shaderów. Omawiając ulepszenia Fortnite Unreal Engine 5.1, mogłem porozmawiać bezpośrednio z Epic Games na temat tego problemu i mam nadzieję, że sytuacja się poprawi.

Jednakże, chociaż #StutterStruggle DF jest na pierwszym planie problemów, faktem jest, że zajęcie się tym jest tylko jednym z kluczowych punktów z kilku, którymi należy się zająć. W przestrzeni PC nie ma jednego „posiadacza platformy”, więc najlepsze praktyki i rzeczywiste wymagania techniczne nie mogą być egzekwowane w taki sposób, jak w przypadku konsol Sony, Microsoft i Nintendo. Mimo to, chociaż powyższa lista może wydawać się ogromem pracy, w rzeczywistości chodzi o poświęcenie takiej samej uwagi portowi PC, jak często w przypadku wersji konsolowych, oraz o dostarczenie gry, która nie tylko będzie dobrze działać na sprzętu dzisiejszego, ale wytrzymuje próbę czasu w nadchodzących dziesięcioleciach.


Aby zobaczyć tę zawartość, włącz ukierunkowane pliki cookie.

Znak czasu:

Więcej z Eurogamer