Vorig jaar was een ramp voor pc-games - hier is hoe dingen moeten veranderen

Vorig jaar was een ramp voor pc-games - hier is hoe dingen moeten veranderen

Bronknooppunt: 1893511

2022 was een moeilijk jaar voor pc-poorten. Tussen stotterende prestatieproblemen en irritante gebruikerservaringsproblemen, was ik bijna gebroken als recensent voor Digital Foundry. Om het jaar met een frisse lei te beginnen, dacht ik dat het een goed idee zou zijn om een ​​soort checklist samen te stellen voor best practices bij het maken van een pc-poort. Bij het opstellen van deze lijst met wat u wel en niet moet doen, heb ik een beroep gedaan op mijn ervaring met het recenseren van honderden titels gedurende mijn vier jaar bij Digital Foundry.

De lijst is zeker niet uitputtend, aangezien ik me probeer te concentreren op de belangrijke kernaspecten van een pc-poort. Er zijn nog tal van andere best practices die ik kan aanbevelen, bijvoorbeeld geen draagraketten vanuit draagraketten. Geen aanmeldingen bij andere online platforms om een ​​game op Steam te lanceren, zou een andere zijn. Ik zou ook graag een soort industriebrede standaardisatie zien bij het presenteren van aanbevolen specificaties die de potentiële koper daadwerkelijk informeren over het soort systeem dat ze nodig hebben om het spel goed te spelen - het huidige systeem is zinloos zonder de context van resolutie en prestatie verwachtingen. Het is duidelijk dat er veel moet worden aangepakt, maar mijn focus ligt hier gewoon op het leveren van een sterke, competente pc-poort.

Sommige van mijn suggesties zijn technisch strenger, andere zijn laaghangend fruit: maar het belangrijkste is dat ze allemaal haalbaar zijn en ik heb voorbeelden om ze te ondersteunen. Ik zou ook aanraden om de video te bekijken - als alles samenkomt in een goed geïmplementeerde pc-poort, is het net poëzie. Het instellingenmenu van Days Gone is bijvoorbeeld verbazingwekkend goed. Maar voor ons eerste punt beginnen we met de grote.

Alex Battaglia presenteert zijn suggesties voor het verbeteren van de staat van pc-poorten, na een verschrikkelijk 2022.

1. Elimineer het stotteren van de shader-compilatie

Misschien was je het afgelopen jaar op de hoogte van mijn #StutterStruggle. Het is de situatie waarin, hoe krachtig je pc-hardware ook is, de gameplay regelmatig wordt onderbroken door stotteren die niet voorkomt in de consoleversies van dezelfde game. Een van de grootste sterke punten van het pc-platform is de diversiteit aan hardware, maar dit betekent dat ontwikkelaars geen vooraf gecompileerde shader-code met hun games kunnen verzenden op dezelfde manier als op consoles. Wat er in een breed scala aan games op pc gebeurt, is dat die shaders tijdens het spelen worden gecompileerd, wanneer ze nodig zijn. Terwijl dat gebeurt, loopt het spel vast – alles van 30 ms tot een volle seconde pauze begint, afhankelijk van het spel en de kracht van je CPU. De frequentie van deze haperingen is meestal onaanvaardbaar in de betreffende titels.

Dit kan worden geëlimineerd, en hoe het wordt bereikt, is eerlijk gezegd niet zo belangrijk. Shaders kunnen worden gecompileerd met een pre-compilatiestap zoals te zien is in de Uncharted: Legacy of Thieves-collectie op pc, waardoor je tot 10 minuten moet wachten op een krachtige CPU en zelfs langer op een mid-range CPU. Shaders kunnen ook asynchroon op de achtergrond op de CPU worden gecompileerd, zoals te zien is in Star Citizen en Horizon Zero Dawn. Een game kan ook een combinatie van pre-compilatie en asynchrone compilatie gebruiken, zoals Spider-Man Remastered. Het punt is dat alles en nog wat moet worden gedaan om een ​​shader voor te bereiden door hem op de een of andere manier te verwarmen voordat hij nodig is.

Dit item op de lijst vereist absoluut enige technische nauwkeurigheid en denkwerk, maar het is waarschijnlijk het belangrijkste item op deze lijst op dit moment, gezien hoe rampzalig de situatie de laatste tijd is geweest. Een andere tip die ik hier heb voor shader-compilatie is dat als er een lange pre-compilatiestap is en je je zorgen maakt over een slechte gebruikerservaring terwijl ze wachten, maak dan de pre-compilatiestap onderbreekbaar of optioneel, met een waarschuwing dat de gebruiker zullen stotteren als ze ervoor kiezen om niet te wachten op precompilatie. Modern Warfare 2 stelt gebruikers in staat om shaders te annuleren en opnieuw te compileren wanneer ze dat willen door op een knop te klikken - en dat is een geweldig ontwerp.


Shader-compilatie hapert in Kena: Bridge of Spirits. De explosie is een nieuw effect dat nog niet eerder is gezien, dus wordt er tijdens het spelen een nieuwe shadercode gegenereerd, die hier een bevriezing van iets minder dan 200 ms veroorzaakt.

2. Lever visueel responsieve grafische opties

Het instellingenmenu is een cruciaal onderdeel van een pc-poort, maar het is ook een compleet mysterie voor de meeste gamers. Wat doen de opties eigenlijk? Wat is ambient occlusion precies? Hoeveel prestatie bespaar ik door opties te wijzigen? De weg vooruit is om een ​​grafisch menu op te nemen dat responsieve visuele feedback levert. Zoals eerder vermeld, is het grafische menu in Days Gone een meesterwerk – misschien wel het toppunt van grafisch menu-ontwerp.

Je kunt opties in het menu wijzigen terwijl de gamewereld nog steeds achter het menu wordt weergegeven en in de bovenhoek is het mogelijk om de prestatie-impact te zien van wat er in realtime wordt gewijzigd. Ik raad serieus aan om deze stijl van grafisch menu na te bootsen - het is belangrijk om een ​​menu zoals dit of het menu in Spider-Man Remastered te hebben dat erg op elkaar lijkt, omdat het de gebruiker in staat stelt om de wijzigingen in de grafische presentatie in realtime te zien, dus ze kunnen gemakkelijk het effect op visuals en prestaties zien. In en uit een menu moeten gaan, of erger nog, het spel opnieuw moeten laden na een wijziging van een instelling, maakt het bijna onmogelijk om de instellingen op een zinvolle manier te wijzigen.

Als dit problematisch is om te implementeren, zijn er alternatieven: voeg beschrijvende tekst, visuele indicatoren en zelfs prestatietips toe over welk pc-onderdeel het meest wordt belast door de instellingen die worden gewijzigd. Gears 5 doet dit op pc en het geeft goed inzicht in wat grafische opties doen. Veel gebruikers hebben de neiging om te denken dat de prestaties van een game volledig worden beperkt door de GPU die ze hebben, terwijl in werkelijkheid de CPU en de gebruikte hoeveelheid videogeheugen net zo cruciaal kunnen zijn om goede prestaties te bereiken.


Interactieve grafische instellingenmenu's die je in het spel laten zien wat de veranderingen zijn - en de prestatiekosten - zijn de weg vooruit. De menu's van Days Gone zijn een meesterwerk.

3. Zorg voor verstandige, op conventies gebaseerde menunavigatie

Duizenden games op pc hebben de afgelopen 30 jaar menu's gehad en in die tijd zijn er veel conventies ontstaan ​​- en het is belangrijk om vast te houden aan deze gevestigde 'taal' voor navigatie. ESC of backspace zou u bijvoorbeeld altijd uit een menupagina moeten halen. De pijltjestoetsen en zelfs WASD zouden bruikbaar moeten zijn om door een menu te navigeren zonder een muis te gebruiken. Alt + F4 moet het spel altijd naar de desktop afsluiten. Er zijn natuurlijk meer van deze conventies, maar de kern is dat gebruikers het spelmenu snel moeten kunnen bedienen, hetzij met een muis of een toetsenbord door zijn eenzame en het moet intuïtieve, gevestigde bedieningselementen gebruiken.

4. Nest menu's niet overdreven

Grafische opties, aanpassing van de besturing of andere vaak omgeschakelde dingen moeten maximaal drie menu's diep zijn, maar bij voorkeur slechts een of twee. Als u bijvoorbeeld de kwaliteit van een visueel effect wilt wijzigen, hoeft u niet eerst naar opties te gaan, vervolgens naar video-opties en vervolgens afzonderlijke subpagina's voor elk type grafische optie. In plaats daarvan zou het gewoon naar opties, video-opties moeten gaan en dan de meeste, zo niet alle, grafische opties daar zien. Vermijd indien mogelijk ook scrollen op optiemenuschermen. Scrollen kan een beetje traag zijn en het verbergt soms opties. Een goed voorbeeld van een niet-scrollend menu is te zien in Arma 3. Deze game vermijdt scrollen door zowel de linker- als de rechterkant van het scherm te gebruiken en met een kleinere tekstgrootte - het gebruikt de schermruimte. Dit is heel anders dan de links uitgelijnde opties met grote tekst die we in veel ports naar pc zien.

5. Vernieuwingsfrequentie en resolutie moeten afzonderlijke opties zijn

De lijst met resoluties en vernieuwingsfrequenties zou de beschikbare lijst met resoluties en vernieuwingsfrequenties van Windows zelf moeten scannen. Al te vaak laad ik een game om erachter te komen dat de verversingssnelheid in de game niet eens wordt vermeld en dat er een aantal resoluties ontbreken. Bovendien moet een gebruiker bepalen wanneer de vernieuwingsfrequentie verandert door deze toe te passen: door het menu te verlaten of door op 'Toepassen' te drukken. Pas een resolutie niet automatisch toe nadat deze is gewijzigd: als u bijvoorbeeld in recente Capcom-titels uw muis van de resolutie-optie beweegt, verandert deze automatisch naar de laatst geselecteerde optie, zelfs als u dat niet wilt.

Een goed tegenvoorbeeld is te vinden in Marvel's Spider-Man Remastered, die het op een meer logische manier doet - de resolutie-optie is apart en toont elke afzonderlijke resolutie die Windows vermeldt, en dan is er nog een andere optie om de verversingssnelheid van de gekozen resolutie volledig te wijzigen resolutie – de resolutie wordt alleen toegepast wanneer de gebruiker dat wil. Games die resolutie- en vernieuwingsopties beperken tot de huidige Windows-desktopinstellingen zijn een bijzonder probleem dat moet worden geëlimineerd.


Marvel's Spider-Man Remastered doet het goed: onafhankelijke opties voor resolutie en verversingssnelheid... en volledige controle over venster- en volledig-schermmodi.

6. Voeg een gezichtsveldoptie (FOV) toe

Een smal gezichtsveld komt vaak voor in consolegames om claustrofobische stemmingen te creëren of om prestaties te besparen - en kan pc-gebruikers letterlijk ziek maken. Een gezichtsveldoptie maakt het spel daadwerkelijk speelbaar voor veel gebruikers waar het standaard gezichtsveld mogelijk te smal was. Nogmaals, het Days Gone-menusysteem is een genot om hier te gebruiken - terwijl je de FOV-variabele aanpast, verandert de weergave op de achtergrond in realtime, waardoor de gebruiker kan aanpassen aan zijn precieze voorkeur.

7. Voeg variabele beeldverhoudingen en framesnelheden toe

Over het algemeen wordt dit een gangbare praktijk, maar er zijn nog steeds games die niet geschikt zijn voor de enorme variatie in weergavetypes die beschikbaar zijn voor pc-gebruikers. Niet elke pc-speler zal een 16:9-monitor gebruiken die is vergrendeld op 60 Hz of 120 Hz. Velen zullen spelen op ultrabrede monitoren of op monitoren die tot 240 Hz of zelfs hoger kunnen gaan. Het ondersteunen van deze beeldverhoudingen en verversingsfrequenties betekent dat deze gebruikers een comfortabele ervaring krijgen die ze van hun hardware verwachten.

Het grotere punt hier is dat de pc een platform is met variabele hardware en om de pc goed te ondersteunen, mag niets worden gecodeerd als een vaste ervaring zoals bij consoles. Gebruikers zullen games willen spelen met elke denkbare framesnelheid of elke beeldverhouding die u zich kunt voorstellen: ik speel bijvoorbeeld graag moderne games op een 4:3 CRT-monitor. Dus het koppelen van zaken als spellogica aan framesnelheid of de gebruikersinterface aan vaste pixelrasters is categorisch een slecht idee.

8. Voeg v-sync-opties voor halve, derde en kwart rate toe met consistente frame-pacing

Veel games hebben framesnelheidsbegrenzers, maar deze hebben vaak een erg slechte framesnelheid met ingeschakelde v-sync, waarbij de gemiddelde framesnelheid het gekozen getal kan zijn, maar de frametijden waaruit die framesnelheid bestaat, niet consistent zijn, leidend tot een visueel slechte ervaring met inconsistente latentie.

Een goed voorbeeld van hoe je het correct moet doen, is te vinden in Cyberpunk 2077 – hier is er een aparte frame-limiter-optie met willekeurige framesnelheidsbeperking, maar er zijn uitgebreide v-sync, halve verversingssnelheid v-sync, een derde snelheid v-sync en kwartsnelheid v-sync. Met een dergelijke optie kunnen gebruikers perfecte frame-pacing krijgen wanneer ze hun FPS beperken, en ze kunnen dingen doen zoals spelen met 40 fps bij 120 Hz, wat een geweldige functie is voor diegenen die op zoek zijn naar een hogere framesnelheid dan 30, maar de instellingen.


Aanpasbare v-sync-opties met consistente frame-pacing maken dit soort dingen mogelijk: een maximale Cyberpunk 2077 die vergrendeld draait op een constante 40 fps (25 ms per frame) in een 120 Hz-container.

9. Voeg meerdere kwaliteitsniveaus toe voor zware effecten

Simpele aan/uit-schakelaars voor zware functies zoals ray tracing zijn niet genoeg: ik zou graag lage, gemiddelde en hoge opties willen zien voor elk RT-effect. Een voorbeeld van hoe het niet moet, is te vinden in The Witcher 3 Complete Edition op pc, waar er alleen aan- en uit-opties zijn voor de verschillende ray tracing-effecten. Dit heeft ertoe geleid dat gebruikers aangepaste mod-voorinstellingen hebben gemaakt voor de RTXGI in de game om de kwaliteit ervan te verminderen, zodat deze beter werkt op RT-compatibele GPU's met lagere specificaties. Dit is een duidelijk voorbeeld van een optie die in het grafische menu zou moeten staan. Controle is een ander voorbeeld waarbij console-optimalisaties - checkerboard RT-reflecties - nooit hun weg vinden naar pc. Een functie die voor consoles werkt, heeft steevast ook nut op pc.

Evenzo moeten RT-effecten ook worden geschaald om high-end GPU's te accommoderen - een voorbeeld van hoe dit niet te doen, is te vinden in Capcom-games op de RE Engine, waar de hoogste instelling voor ray tracing in de game van een bizar lage kwaliteit is. Marvel's Spider-Man Remastered doet dit goed: je kunt de resolutie van het RT-reflectie-effect regelen, je kunt de kwaliteit van de modellen in de RT-reflecties regelen en, cruciaal, je kunt ook de afstand en dichtheid regelen van de objecten die worden gestraald. tegen, waarmee gebruikers het effect van ray tracing op hun CPU-prestaties kunnen regelen. Het kunnen regelen van het BVH-bereik en de dichtheid is cruciaal in het moderne tijdperk waarin de CPU-snelheid niet zo snel toeneemt als in het verleden.

10. Voeg consolefuncties toe, zoals dynamische resolutieschaling

Dynamische resolutieschaling is niet onmogelijk op pc - er zijn veel voorbeelden van goede DRS op pc. Titanfall 2 heeft een van de beste dynamische resolutie-scalers die er zijn en het is volledig uitgerust op pc en werkt net als de consoleversie. Dit is een DX11-game, wat betekent dat Respawn een dynamisch resolutieschema van ongelooflijk hoge kwaliteit op pc heeft geïmplementeerd, hoewel ze technisch gezien minder controle hadden over de beschikbare pc-bronnen die DX12 of Vulkan hen zou kunnen bieden. Als in dit scenario zo'n hoogwaardige implementatie beschikbaar is, is er eigenlijk geen goed excuus voor een consoleversie van een game om DRS te hebben, maar voor de pc-versie om het weg te laten.


Het DRS-systeem van Titanfall 2 is overgenomen van de consoleversies, maar heeft extra functionaliteit op pc. Het is een lichtend voorbeeld van hoe de functie moet worden geïmplementeerd - en de kwaliteit ervan in de gameplay is fantastisch.

11. Voeg HDR en surround sound toe als de consoleversies dit ondersteunen

Niet elke pc is aangesloten op een standaard bureaumonitor terwijl de gebruiker een koptelefoon draagt ​​- veel mensen gebruiken hun pc's met televisies met thuisbioscoopopstellingen, waar HDR en surround sound prominent aanwezig zijn. De basisregel is: als je een functie op een console doet, doe het dan op pc.

12. Voeg als optie console-equivalente instellingen toe

Als de game op de console staat en aangepaste console-instellingen heeft om het daar goed te laten werken, neem dan ook een gemakkelijk herkenbare 'console'-instelling op pc op. De recente God of War PC Port deed dit erg goed: daar worden de console-instellingen 'origineel' genoemd en start de game standaard met deze instellingen. Dit is erg slim omdat de gekozen instellingen voor de consoleversie van een game over het algemeen goed genoeg visuele looks bieden voor acceptabele prestaties.

Mijn handleidingen voor geoptimaliseerde instellingen genereren vaak vrijwel identieke instellingen als de consoleversies. De grafische opties van een game moeten de console-instellingen op een transparante manier weergeven. In feite zijn console-equivalente instellingen de keuzes van de ontwikkelaar voor de beste waar voor je geld op een midrange-systeem, dus waarom zou je de voordelen van die wijsheid niet ook aan pc-spelers aanbieden? Deze instellingen bieden ook een goed startpunt voor pc-gebruikers om te tweaken op basis van de mogelijkheden van hun eigen hardware.

13. Ondersteuning van alle belangrijke technologieën voor beeldreconstructie

Elke GPU-leverancier heeft zijn eigen beeldreconstructietechniek: Nvidia heeft DLSS, Intel heeft XeSS en AMD heeft FSR2. Elk van deze werkt meestal het beste op hun respectievelijke hardware en ze gebruiken allemaal vergelijkbare ingangen wanneer ze op een game-engine worden aangesloten. In 2023 zou het niet acceptabel moeten zijn dat een game wordt gelanceerd met ondersteuning voor slechts één van deze beeldreconstructietechnieken, maar niet de andere. En ik denk echt niet dat het uitmaakt welke GPU-leverancier de game sponsort: een door AMD gesponsorde titel zou nog steeds XeSS en DLSS moeten ondersteunen, terwijl er geen reden is waarom een ​​door Nvidia ondersteunde titel XeSS of FSR2 niet zou ondersteunen – vooral omdat er nog steeds veel gebruikers op GPU's uit de GTX 900- en GTX 1000-serie die gebruik kunnen maken van deze technologieën.

Met dat in gedachten is het teleurstellend om te zien dat het Callisto-protocol alleen wordt geleverd met FSR2 wanneer Unreal Engine alle opschalingstechnologieën ondersteunt. Het is even frustrerend om te zien dat A Plague Tale: Requiem alleen DLSS-ondersteuning levert als een ontwikkelaar van Asobo's kwaliteit gemakkelijk vergelijkbare technologieën kan accommoderen. Wat deze games met elkaar verbindt, is dat ze grafisch echt pushen - en elke vorm van versnellingstechnologie die de deur opent naar soepelere prestaties moet worden omarmd.


Integratie van zowel FSR2 als DLSS2 in games die opschaling van beeldreconstructie ondersteunen, zou een gegeven moeten zijn - en ook Intel's XeSS omvatten. Dit zijn geweldige functies die niet moeten worden beperkt tot de implementatie van één GPU-leverancier.

Zoals ik aan het begin van dit stuk al zei, was 2022 een echt moeilijk jaar voor pc-gaming, waarin ikzelf en het team het punt bereikten waarop we bang waren voor de komst van een nieuwe pc-poort. Elden Ring arriveerde in een behoorlijk rampzalige staat, talloze Unreal Engine 4-titels bereikten ons met ondraaglijke stotterproblemen, met als hoogtepunt de komst van een letterlijk onspeelbare build van The Callisto Protocol.

Ik breng deze suggesties naar voren in de hoop dat het profiel van Digital Foundry verandering kan beïnvloeden - en om eerlijk te zijn, er zijn enkele positieve signalen geweest. Het Callisto-protocol op pc heeft nog steeds ernstige problemen met het CPU-gebruik, maar het stotteren behoort tot het verleden dankzij een shader-compilatiestap die na de lancering aan de game is toegevoegd, precies zoals ik suggereerde in het eerste punt hierboven. Andere UE4-titels zoals Sackboy: A Big Adventure en High on Life ontvingen ook post-launch-updates die probeerden om problemen met de shader-compilatie op te lossen. Toen ik de Unreal Engine 5.1-upgrades van Fortnite besprak, kon ik rechtstreeks met Epic Games over dit probleem praten en ik heb goede hoop dat de zaken zullen verbeteren.

Hoewel #StutterStruggle van DF in de voorhoede van de problemen staat, is het een feit dat de aanpak hiervan slechts een van de belangrijkste punten is van een aantal punten die moeten worden aangepakt. Er is geen enkele 'platformhouder' in de pc-ruimte, dus best practices en daadwerkelijke technische vereisten kunnen niet worden afgedwongen zoals op Sony-, Microsoft- en Nintendo-consoles. Toch, hoewel de bovenstaande lijst misschien veel werk lijkt, gaat het in werkelijkheid om het geven van dezelfde soort aandacht aan een pc-poort die vaak wordt besteed aan de consoleversies en het leveren van een game die niet alleen goed draait op de hardware van nu, maar doorstaat de tand des tijds in de komende decennia.


Schakel targeting cookies in om deze inhoud te zien.

Tijdstempel:

Meer van Eurogamer