
Tās laikā Nereālās adreses stāvoklis 2023. gada GDC izstādē Epic paziņoja par plašu funkciju komplektu Unreal Engine 5.2. Bet varbūt visvairāk svarīga funkcija, kas tiek iekļauta atjauninātajā dzinējā, nav saistīta ar apgaismojumu, ģeometrijas detaļām vai staru izsekošana. Tas viss ir saistīts ar veiktspēju.
Saturs
- Atcerieties stostīšanos
- Viss Fortnite
- Joprojām ir daudz par ko sajūsmināties
Ieteiktie videoklipi
Nereāls dzinējs spēles, pareizi vai nepareizi, pēdējos gados ir bijušas saistītas ar stostīšanos un aizķeršanos. Ar jauno versiju Epic beidzot risina problēmu, tāpēc es domāju, ka ir pēdējais laiks izjaukt, kāpēc Unreal spēles ir tik ļoti parasti parāda stostīšanos, to, ko Epic dara, lai atrisinātu problēmu, un kad mēs varam sagaidīt, ka šie centieni parādīsies jaunos laidienos.
Atcerieties stostīšanos

Dažu pēdējo gadu laikā Unreal Engine ir kļuvis par stostīšanās sinonīmu. Mēs to esam redzējuši atkal un atkal, no
Zvaigžņu karu Jedi: kritušais ordenis uz Nomaldījies uz Gotham Knights, un viņiem visiem ir viena un tā pati kopīga problēma. Tā ir kompilācijas stostīšanās.Parasti jūs dzirdēsit par ēnotāju kompilācijas stostīšanos, taču nesenie aizķeršanās avoti nav saistīti ar atsevišķiem ēnotājiem. Jaunākajā grafikā API, piemēram, Vulkan un DirectX 12, pakotnes, kas pazīstamas kā Pipeline State Objects (PSO), tiek izmantotas, lai pastāstītu spēlei par jūsu GPU stāvokli. PSO ir paredzēti, lai padarītu renderēšanu efektīvāku, ļaujot vienā pakotnē savienot vairākus desmitus parametru, tostarp ēnotājus, starp API un GPU.
Tomēr tie rada citu problēmu. Tā kā PSO ir tik daudz informācijas, jaunas ģenerēšana lidojuma laikā aizņem ilgu laiku (saskaņā ar uz Unreal dokumentāciju, 100 vai vairāk milisekundes). Šī izpildlaika PSO izveide ir stostīšanās avots, kurā programmai ir jāģenerē jauns PSO, kamēr jūs faktiski spēlējat.
Lai to novērstu, programmā Unreal Engine ir pieejama PSO kešatmiņa. Tādējādi tiek izveidota iespējamo PSO kešatmiņa, tāpēc spēles spēlēšanas laikā nav jāģenerē jauni, taču tie nav ideāli. Kā skaidro Epic, PSO iepriekšēja kešatmiņa var “būt apgrūtinoša lieliem projektiem un joprojām atstāt nepilnības kešatmiņā, kas izraisa aizķeršanos”. Tāpēc pat spēlēs, kas iepriekš kompilē ēnotājus uz GPU, jūs joprojām reizēm redzēsit stostīšanos (pat ja tās ir maz un tālu starp).
Epic mēģina automatizēt šo procesu, apkopojot PSO, nevis atstājot to izstrādātāju ziņā, lai ņemtu vērā visus iespējamos GPU parametrus. Tas ir ieslēgts Epic publiskā ceļa karte, taču tagad ir pieejama tikai eksperimentālā versija. Unreal Engine 5.2 mērķis ir uzlabot PSO kešatmiņu, lai vēl vairāk samazinātu aizķeršanās.
Viss Fortnite

Ir daudz ko satraukti par Unreal Engine 5 (par dažiem no tiem es pievērsīšos tālāk), taču mums vēl nav skaidra priekšstata par dzinēja darbību. Līdz šim tas ir izmantots tikai tehnoloģiju demonstrācijās un Fortnite starp galvenajiem izdevumiem. Pat tādas spēles kā Redfall kas solīja izmantot Unreal Engine 5, ir pārgājuši uz Unreal Engine 4.
Lai būtu skaidrs, Unreal Engine 4 pieejamie rīki ļauj izstrādātājiem optimizēt spēles, lai izvairītos no stostīšanās. Atomiskā sirdsir viens no daudziem tā piemēriem. Taču sarežģītais PSO stāvoklis spēles laikā ir atstājis durvis vaļā, un Epic automatizētā PSO apkopošana tika ieviesta tikai Unreal Engine 5.1.
Lai gan es priecājos redzēt, ka Epic tieši risina šo problēmu, mēs vēl neesam redzējuši automātisko PSO kešatmiņu. Tā kā no mazākām komandām iznāk sarežģītākas, daudzveidīgākas versijas, pieaug pieprasījums pēc PSO ģenerēšanas, un kļūst arvien lielāka aizķeršanās un stostīšanās iespēja.
Tas jo īpaši attiecas uz spēlēm, kas ietver staru izsekošana, jo Unreal Engine 5 neatbalsta PSO kešatmiņu staru izsekošana PSO. Kā Nvidia skaidro, ir iespējams sadalīt staru izsekošanas PSO izveides darbu vairākiem pavedieniem, taču tas nebūt nenozīmē, ka izstrādātāji izmantos šo procesu.
Joprojām ir daudz par ko sajūsmināties

Mums joprojām ir jāredz automatizēta PSO apkopošana Unreal Engine 5, taču patiesībā šajā dzinējā ir daudz ko satraukti. Pirmkārt un galvenokārt, Lumen. Apgaismojums ir ārkārtīgi svarīgs grafiskai precizitātei, un tiek demonstrētas dārgas tehnikas, piemēram, apgaismojums ar trajektoriju. Portāls RTXir grūti pret aparatūru. Lumen sadala atšķirību.
Lumen izmanto staru izsekošanu, taču tā ir ļoti optimizēta forma
Rezultāti jau ir skaidri. Fortnite darbojas konsolēs ar Lumen ar ātrumu 60 kadri sekundē (fps), un tas izskatās satriecoši datorā, pat Fortnite's multfilmu pasaule.

Nanite darbojas tandēmā ar Lumen. Tā ir virtualizēta ģeometrijas sistēma, kas satur ļoti detalizētus, ļoti saspiestus tīklus, kurus spēles laikā var pielāgot. Tas būtībā ir sarežģīts detaļu līmenis (LOD) tīkliem, kas automātiski mainās starp detalizētiem un neskaidriem tīkliem atkarībā no kameras skatīšanās vietas.
Vēl svarīgāk ir tas, ka Nanite darbojas ar savu renderēšanas caurlaidi, tāpēc tas nav iekļauts tradicionālajā GPU konveijerā. Tas nozīmē, ka jūsu spēle paliek gluda pat tad, ja Nanite maina tīkla sarežģītību. Starp Nanite un Lumen jums ir divas vizuāli iespaidīgas, skaitļošanas ziņā efektīvas funkcijas, kas paaugstina grafiskās precizitātes latiņu.
Tomēr Epic savā State of Unreal uzrunā dalījās vairāk. Substrāts ir jauna materiālu sistēma Unreal 5.2, kas ietver detalizētāku ēnotāju vadību. Epic to demonstrēja ar opāla virsmas materiālu, demonstrējot vairākus slāņus un precīzu gaismas refrakciju visā tajos.

Jaunā procesuālā satura ģenerēšanas sistēma (PCG) arī ir aizraujoša, pat ja tā nav tieši saistīta ar vizuālo precizitāti. Ar ierobežotu ievadi PCG var ģenerēt jaunus objektus, lai izstrādātāji varētu ātri izveidot pasaules ar augstu detalizācijas līmeni. Tas ir aizraujoši plašākām pasaulēm, kurām nav nepieciešams mākslinieka pieskāriens katrā stūrī.
Ir vēl daudz vairāk, sākot no MetaHuman sasniegumiem un beidzot ar pilnīgu ceļa izsekošanu Unreal Engine. Tas ir aizraujoši, taču stostīšanās problēmas, kas parasti ir saistītas ar Unreal Engine laidieniem, joprojām pastāv. Cerams, ka Epic sasniegumi PSO kešatmiņā var apiet šo problēmu, taču mums vēl nav daudz Unreal Engine 5 spēļu, lai redzētu, kā šī sistēma darbojas.
Š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
- Ar ekskluzīvām personālo datoru partnerībām zaudē visi
- Visu laiku sliktākie datoru porti — un kāpēc tie bija tik slikti
- Kā ģeneratīvais AI radīs spēles ar “plašākām, lielākām un dziļākām pasaulēm”
- Zvaigžņu kari Jedi: Survivor tiek pārskatīts Steam kā "pilnīgs muļķīgs" datora ports