Es jautāju izstrādātājiem, kāpēc datoru porti 2023. gadā darbojas kā atkritumi

dt piedāvātajam attēlam 2
Šis stāsts ir daļa no Džeikoba Roča ReSpec sērijas, kas aptver datoru spēļu un aparatūras pasauli.

Aplūkojot PC izlaidumu stāvoklis 2023. gadā ir viegli sākt rādīt ar pirkstiem. Spēle nav optimizēta (lai ko tas arī nozīmētu), vai arī izdevējs to pasteidzās pārāk ātri, vai arī Nvidia mums ir pārdevusi grafiskās kartes. ar pārāk mazu VRAM. Taču šīs apsūdzības vairumā gadījumu ir pusapgalvotas un pārgalvīgas, un, lai gan tās dod mājienu uz realitāti, tās neatstāsta visu stāstu.

Saturs

  • Kāda ir problēma?
  • Ko jūs varat darīt pareizi
  • Ceļš uz priekšu datoru portiem

Ieteiktie videoklipi

Es gribēju uzzināt, kas patiesībā notiek, tāpēc es sēdēju kopā ar dažiem izstrādātājiem, lai izprastu datorspēļu stāvokli un to, kāpēc ir iznākuši tik daudzi izlaidumi ar tik lielām problēmām. Vēl svarīgāk ir tas, ka es gribēju zināt, ko izstrādātāji un izdevēji varētu darīt, lai atrisinātu šīs problēmas, un, lai gan ceļš uz priekšu nav skaidrs, kļūst skaidrs, ka izstrādātāji zina, ka pastāv a problēma.

Kāda ir problēma?

Neliels spēļu dators, kas atrodas blakus PS5.

Pirmkārt, mums ir jāidentificē galvenā problēma ar personālo datoru, it īpaši, ja spēles tiek piegādātas spēlējamās (ja ne perfektās) konsolēs, bet datorā tās ir šausmīgi bojātas. Augstā līmenī problēma ar datoru kā platformu ir tieši tā, kas padara to tik vilinošu, pirmkārt: elastība.

Saistīts

  • Ar ekskluzīvām personālo datoru partnerībām zaudē visi
  • Konsolēm joprojām ir viena liela priekšrocība, un tā kaitē datorspēlēm
  • Kā vīrusu bodycam spēle lika internetam domāt, ka tas ir īsts kadrs

Marks Vitens, Unity Create vecākais viceprezidents un ģenerālmenedžeris, saka, ka “datoru konfigurāciju milzīgā daudzveidība un mainīgums, kurā tiks spēlētas spēles, noteikti var atklāt negaidītas problēmas." Vaitens arī norāda uz “dažādām operētājsistēmām un jauniem draiveru atjauninājumiem, karstumu un latentumu un lietotāja pielāgošanu” kā faktorus, kas var ietekmēt problēmu.

Esmu pārliecināts, ka lielākā daļa cilvēku uzskata, ka tā ir atbilde.

Bet problēma, pēc Vaitena domām, nav pašas testēšanas trūkums. Viņš apgalvo, ka spēles "parasti tiek plaši pārbaudītas izstrādes laikā". Problēma nonāk līdz dažādu konfigurāciju mērogs, kas izstrādātājiem ir jāpārbauda, ​​kā arī mainīgie, kurus viņi nevar ņemt vērā priekš.

Domājams eksperiments, pieņemsim, ka izstrādātājs testēšanai ir piespraudis 100 dažādas datora konfigurācijas, mainot CPU, GPU, RAM, un starp tiem cietais disks. Ierakstiet, šis ir skaitlis, ko es tikai izvelku, nevis tas, ko izstrādātājs patiesībā minēja kā reālu mērķi. Tagad izmantojiet visas šīs konfigurācijas un reiziniet to ar desmitiem papildu faktoru: Kādu OS jūs izmantojat? Kāda šīs OS versija? Kā ar draivera versiju? Kādi BIOS iestatījumi ir iespējoti? Vai jums ir kāda programmatūra, kas darbojas fonā, piemēram, Razer Synapse vai Corsair iCue?

RTX 4080 darbojas testa stendā.
Jēkabs Ročs / Digitālās tendences

Iespējamo konfigurāciju apjoms ir daudz plašāks par to, kāds CPU un GPU ir jūsu sistēmā, un šie faktori var viegli izplatīties desmitiem tūkstošu scenāriju, kurus izstrādātāji vienkārši nevar ņemt vērā priekš. Ideālā pasaulē izstrādātāji var novērst populārāko datoru konfigurāciju lielākās problēmas, izmantojot jaunākos draiverus un OS atjauninājumus, atstājot tikai nelielas, specifiskas problēmas, kas jārisina pēc palaišanas.

Arī Vaitens šajā noskaņojumā nav viens. Džons Johanass, spēles direktors Hi-Fi Rushun Ļaunums 2, saka, ka "ir diezgan nereāli domāt, ka jūs varat izveidot produktu, kas nevainojami darbosies ar ko šķiet kā neierobežota CPU, GPU, atmiņas konfigurācija un, visticamāk, tā, kas darbojas fons.”

Hideyuki Miyashita, sistēmu programmētājs ieslēgts Hi-Fi Rush, piekrita, taču īpaši norādīja uz spēles optimizēšanas izmaksām katrai iespējamai konfigurācijai: “In datora veiktspējas ziņā, padarot katru grafikas līdzekli pielāgojamu dažādām konfigurācijām ideāls; tomēr izstrādes izmaksas nosaka augšējos griestus reālam mērogojamības atbalstam.

Šis nav jauns stāsts. Lielais datoru konfigurāciju klāsts ir galvenais vaininieks visā, sākot no tā, cik grūti ir optimizēt spēles datorā un beidzot ar to, kāpēc mēs neesam redzējuši Xbox Quick Resume tiek rādīts operētājsistēmā Windows. Jautājums ir par to, ko izstrādātāji var darīt, neskatoties uz ierobežoto laiku un naudu. Tā kā personālie datori nekļūst vienkāršāki, un spēles joprojām nonāk platformā.

Ko jūs varat darīt pareizi

Cal Kestis izmanto savu zilo gaismas zobenu un BD-1 spēlē Star Wars Jedi: Survivor.

Mums ir daudz spēļu piemēru, kas šogad atbalsta datorus nepareizi. Viens galvenais piemērs ir Zvaigžņu karu Džedi: izdzīvotājs, kas šobrīd atrodas pārskatīšanas statusā “Jaukts”. Steam, neskatoties uz to, ka tā ir viena no gada visplašāk atzītajām spēlēm. Labākajā pārskatā teikts: "Viena avārija sabojāja manu 140 stundu 99,8% NG+ saglabāšanas failu." Jā.

Es sazinājos ar izstrādes komandu, lai gūtu priekšstatu par to, kas nogāja greizi, un, lai gan sākotnēji viņi bija atsaucīgi, EA iesaistījās un pārtrauca manus e-pasta ziņojumus. Tāpēc tā vietā, lai skatītu, kādas spēles datorā dara nepareizi, mums ir jāskatās, ko izstrādātāji dara pareizi.

Hi-Fi Rush ir galvenais gadījuma pētījums. Tā ir jauna spēle no AAA studijas, un tajā tiek izmantots bēdīgi slavenais Unreal Engine 4. Jūs varētu domāt, ka tas salīdzina ābolu ar apelsīnu Hi-Fi Rush un tāda spēle kā Zvaigžņu karu džedi: izdzīvotājs, taču viņiem ir vairāk kopīga, nekā jūs varētu domāt. Kā norāda Johanass: “...fakts, ka spēlei ir karikatūras estētika, dažiem lietotājiem radīs priekšstatu, ka spēlei nevajadzētu būt problēmai, lai to varētu palaist neviena personālajā datorā. Reāli, spēle dara daudzas lietas, lai sasniegtu izskatu, kādu mēs meklējām, un pastāvīgi kustīgā pasaule, kas ir ļoti apgrūtinoša... Es zināju, ka ieejot iekšā, un pārliecinājos, ka mēģinām tos sasniegt cerības.”

Čaja sagriež robotu programmā Hi-Fi Rush.
Bethesda

Šī mērķa noteikšana jau no paša sākuma šķita svarīga Hi-Fi Rushstabilitāte. Izstrādātāji atzīmē, ka jau no paša sākuma dizaina mērķis bija saglabāt vismaz 60 kadrus sekundē (fps), jo tā ir gan ritma spēle, gan asa sižeta spēle, kurā šīs atzīmes neievērošana izraisītu “žagas [kas] varētu izraisīt mūzikas desinhronizāciju un uztveramu sliktu spēles pieredzi”, saskaņā ar Johanas.

Kā Tango Gameworks komandai tas izdevās? Tas plaši izpaužas trīs galvenajos punktos: rūpīga VRAM uzraudzība, asinhronas darbības un PSO kešatmiņa.

Saskaņā ar Kosuke Tanaka, vadošā grafikas programmētāja teikto Hi-Fi Rush, komanda uzraudzīja VRAM izmantošanu katrā izstrādes posmā. Tas ietver, protams, katra līmeņa, bet arī katras mākslas sadaļas VRAM lietojuma uzraudzību, lūdzot māksliniekiem samazināt tekstūras vai tīkla atmiņas lietojumu, lai tas atbilstu spēles budžetam. Tas nav nekas neparasts arī spēļu izstrādē.

Kas darbojas Hi-Fi Rushlabvēlība ir tās spēcīgais mākslinieciskais virziens. Kā norāda Tanaka: "Mūsu mākslas stils mums nedaudz palīdzēja, jo mums nav vajadzīgas tradicionālās PBR faktūras, piemēram, parastās kartes, raupjums kartes vai metāla kartes." Tas liecina par darbu ar radošiem ierobežojumiem un to, kā tas var ietekmēt fināla stabilitāti produkts. Johanass saka, ka runa nebija par mazāku apmēru, bet gan par to, ka "nav jācenšas bez iemesla".

Es jautāju komandai, no kā tā ir iemācījusies Hi-Fi Rush ka to varētu izmantot lielākos, plašākos projektos, taču tas nav tieši tas, kā Tango mācās no spēles. Patiesībā izstrādes komanda man teica, ka ir uzzinājusi daudz vairāk par optimizāciju no Ghostwire: Tokija, kas vairāk iekļaujas tradicionālajā AAA veidnē, un tas pārņēma šīs idejas Hi-Fi Rush, nevis otrādi.

Akito uzbrūk ienaidniekiem ar maģiju spēlē Ghostwire: Tokyo.
Ghostwire: Tokyo ir agrīna Unreal Engine TSR demonstrācija, kas ir ļoti līdzīga FSR 2.0.

“Mēs uzzinājām daudz zināšanu par to, kā tikt galā ar stostīšanos spēlē Hi-Fi Rush no mūsu pieredzes optimizācijā Ghostwire: Tokija”, Mijašita man teica. Liela daļa no tā bija  Cauruļvada stāvokļa objekta (PSO) kešatmiņa. Šī ir Unreal Engine 4 funkcija, kas palīdz samazināt stostīšanos, iepriekš kompilējot ēnotājus pirms spēles palaišanas.

Galvenā problēma ir tā, ka Unreal Engine 4 to nedara automātiski, tādējādi radot situācijas, kad ēnotājiem ir jākompilē spēles laikā, kas izraisa stostīšanos. Mijašita saka: "Tā rezultātā daži pēcprocesi un VFX izraisīja stostīšanos." Programmētājs arī saka, ka PSO kešatmiņa nav obligāta, tāpēc izstrādātājam tai ir jāpievērš īpaša uzmanība.

Tomēr kešatmiņa neatrisina visas problēmas, un šeit parādās asinhronās darbības. The Hi-Fi Rush komanda izmantoja asinhrono kompilāciju, kur ēnotāji tiek kompilēti atsevišķi no spēles pavediena, taču tam tika pievērsta arī liela uzmanība, ņemot vērā, ka spēle darbojās ar Unreal Engine 4.

Kā mēs esam redzējuši ar citām Unreal Engine 4 spēlēm, piemēram, Zvaigžņu karu Džedi: izdzīvotājs un Redfall, dzinējs nav īpaši labs attiecībā uz mērogošanu uz daudzajiem pavedieniem, kas pieejami mūsdienu CPU. Kā Mijašita skaidro: “Cik sarežģīts var būt vairāku vītņu atbalsts, ir ļoti atkarīgs no izmantotā dzinēja arhitektūra. Diemžēl UE4 šajā ziņā nedaudz atpaliek.

Jo īpaši Unreal Engine 4, saskaņā ar izstrādātāja teikto, ievieto aktiera (objektu/rakstzīmju) un logrīku (UI un pārklājuma) izveidi tajā pašā CPU pavedienā, kur spēle. Tas nozīmē, ka ikreiz, kad spēle vēlas, piemēram, ielādēt jaunu varoni, pavedienam ir prioritāte. Mijašita saka: "Tā rezultātā sarežģītu aktieru un logrīku izveide var bloķēt spēles pavedienu uz ilgu laiku." Tā ir stostīšanās.

Risinājums ir asinhronās darbības. Miyashita saka, ka komanda izmanto analīzes rīkus, lai precīzi noteiktu, ko centrālais procesors dara, kad objekti tiek ievesti un ka viņi cenšas pārvietot šos uzdevumus uz dažādiem pavedieniem, lai spēle nepalēninātu uz leju. Šī specifiskā mērķauditorijas atlase var palīdzēt arī resursu ielādei. Pārvietojot šīs darbības paralēlā struktūrā, var izvairīties no straumēšanas stostīšanās kļūmēm, kas rodas tādās spēlēs kā Dead Space.

Ceļš uz priekšu datoru portiem

Leila sevi pasargā ar spektrālo lietussargu Redfallā.

Spēles, kas šodien iznāk katastrofālos stāvokļos, sākās pirms gadiem, tāpēc es ceru ka PC izlaidumi gada laikā uzlabosies, var paiet vairāki gadi, līdz mēs ieraudzīsim šīs galvenās problēmas uzrunāts.

Vaitens saka, ka “izstrādātāji ir tikpat norūpējušies par veiktspēju kā spēlētāji”, un tas ir noskaņojums, ko esmu dzirdējis vairākas reizes. Ir veidi, kā optimizēt datoru izlaidumus, sākot no ēnotāju iepriekšējas saglabāšanas kešatmiņā līdz asinhronām darbībām un beidzot ar dažādu aparatūras validāciju. Taču realitāte ir tāda, ka izstrādātāji nevar atskaitīties par visu laika vai naudas dēļ, un parasti gan.

Ceļš uz priekšu šeit ir vienkāršs. Vispirms dariet šo spēļu izdevējiem zināmu, ka vēlaties redzēt aizkavēšanos, nevis sabojātu spēli. Kliedziens uz izstrādātājiem neko daudz nepalīdzēs — viņi jau zina problēmu, un viņi, iespējams, vēlētos, lai tā tiktu atrisināta tikpat ļoti kā jūs. Otrkārt, esiet piesardzīgs, izvēloties jaunu datorspēli izlaišanas dienā. Ir grūti būt pacietīgam, kad kaut ko gaidāt ar nepacietību (ticiet man, es zinu), bet gaidāt, lai iegādātos spēli, līdz problēmas ir novērstas, tas sūta spēcīgu signālu izdevējiem ieguldīt vairāk laika un resursu, lai nodrošinātu, ka spēles ir noslīpētas datorā.

Ir viegli aizmirst, ka šī joprojām ir neatklāta teritorija. Tagad vairāk nekā jebkad agrāk spēles nonāk datorā tajā pašā dienā, kad tās nonāk konsolēs, atšķirībā no dažiem gadiem, kad datoru pieslēgvietas parādījās mēnešus (vai pat gadus) vēlāk. Pirms divām konsoļu paaudzēm lielākā daļa spēļu tika nosūtītas tikai tajā pašā dienā uz vienu platformu; iepriekšējā paaudzē tie bija divi. Tagad ir paredzēts, ka izstrādātāji piegādās vismaz trīs platformas tajā pašā dienā un dažreiz vairāk nekā piecām platformām, ja viņiem ir pēdējās paaudzes versija.

Nav grūti saprast, kāpēc datorā ir problēmas, ņemot vērā šo kontekstu, taču cerams, ka tiks izstrādāti vēl labāki izdevumi.

Šis raksts ir daļa no ReSpec – pastāvīga sleja, kas tiek rādīta reizi divos nedēļās, un tajā ir iekļautas diskusijas, padomi un padziļināti ziņojumi par datorspēļu tehnoloģijām.

Redaktoru ieteikumi

  • Es mēģināju no jauna izdzīvot aizmirsto Halo kā Mac franšīzes mantojumu — un tā bija katastrofa
  • Visu laiku sliktākie datoru porti — un kāpēc tie bija tik slikti
  • Zvaigžņu kari Jedi: Survivor tiek pārskatīts Steam kā "pilnīgs muļķīgs" datora ports
  • Kā Unreal Engine 5 risina lielāko datoru spēļu problēmu
  • AI nāks jūsu datorspēlēm, taču jums vajadzētu būt satrauktiem, nevis uztrauktiem