In quattro anni, siamo passati dalla possibilità di giocare su PC a una versione path-traced di Quake 2 alle stesse tecniche applicate a Cyberpunk 2077, uno dei giochi tripla A più impegnativi in circolazione. Ancora oggi, Quake 2 RTX continua a essere un software impegnativo da eseguire, ma qualsiasi dispositivo, dalla RTX 4070 alla RTX 4090 di fascia alta, è in grado di offrire immagini all’avanguardia a 60 fotogrammi al secondo o più. La domanda è: come?
Non c’è una risposta semplice in questo caso, poiché stiamo esaminando una serie di innovazioni tecnologiche sia in termini di software che di hardware, ed è su quest’ultimo punto che possiamo iniziare ad andare a fondo della questione. Quake 2 RTX è stato lanciato nel giugno 2019 quando la GPU più potente sul mercato era la Nvidia GeForce RTX 2080 Ti. È riuscita a far girare il gioco piuttosto bene a circa 1080p, capace di 60fps con spazio a disposizione. Tuttavia, se si alza la risoluzione a uno standard più elevato, come il 4K, il frame-rate si attesta tra i 10 e i 20 fps.
Quattro anni dopo, le GPU più recenti sono in grado di eseguire i calcoli del ray-tracing – una RTX 4090 esegue lo stesso carico di lavoro circa quattro volte più velocemente – anche se, prima di passare ad analizzare come le prestazioni dell’hardware del ray-tracing siano migliorate così drasticamente, vorrei sottolineare che questa è solo una parte della storia. Gli sviluppatori stanno lavorando duramente per aumentare l’efficienza anche dal punto di vista del software.
La storia deve pur iniziare da qualche parte e i progressi dell’hardware grafico più recente sono impressionanti. Il guadagno di prestazioni di 4 volte della RTX 4090 rispetto alla RTX 2080 Ti deriva da una serie di fonti nell’hardware: più shader core e una frequenza operativa più elevata, naturalmente, ma in parte anche dall’architettura. Ad esempio, ogni nuova architettura Nvidia ha rispettivamente raddoppiato il throughput dei test di intersezione dei triangoli nel core RT. Quindi, l’architettura Ampere nelle schede della serie 30 può testare il doppio dei triangoli nello stesso tempo rispetto alle offerte Turing della serie 20.
Lo si può vedere in pratica confrontando una RTX 3070 che esegue Quake 2 RTX con una RTX 2080 Ti. Nella maggior parte dei titoli di rasterizzazione, o anche nei carichi di lavoro ibridi in ray-tracing, la RTX 3070 e la RTX 2080 Ti sono in testa, o la RTX 2080 Ti può essere in vantaggio. Tuttavia, nei carichi di lavoro di ray-tracing puro, le prestazioni della RTX 3070 sono nettamente superiori. La nuova architettura Ada Lovelace presente nella RTX 4090 aumenta ulteriormente i test di intersezione dei triangoli con un ulteriore salto di due volte rispetto ad Ampere.
Un altro vantaggio tecnico architettonico riscontrato nelle GPU più recenti è una maggiore quantità di cache L2. Si tratta di una tendenza generale di tutti i produttori di GPU, ma le architetture Arc di Intel e Ada Lovelace di Nvidia, in particolare, hanno quantità di cache L2 sproporzionatamente più elevate rispetto ad altre GPU di potenza simile o al loro predecessore più recente. Ad esempio, una RTX 3090 ha 6 MB di cache L2, mentre una RTX 4090 ne ha 72 MB. Intel Arc A770 ha 16 MB di cache, mentre i suoi principali concorrenti della famiglia Ampere o RDNA 2 ne hanno molti di meno.
![](https://i0.wp.com/assetsio.reedpopcdn.com/Tech-Focus-Cyberpunk-2077-Overdrive-HEVC.mp4_snapshot_02.28_%5B2023.04.22_15.32.12%5D.jpg?resize=690%2C388&ssl=1)
Le nuove schede RTX serie 40 includono anche lo Shader Execution Reordering (SER). In un gioco con ray tracing o path tracing di alta qualità, esiste potenzialmente una grande varietà di shader per tutti i materiali del mondo di gioco. Ad esempio, in Cyberpunk 2077, un’auto può avere diversi materiali: metalli, vetri, vernice trasparente, cruscotto, sedili in pelle e molto altro. Per un rendering realistico, è molto importante che tutti questi materiali siano rispettati e ombreggiati correttamente quando la luce rimbalza.
Il problema è che i raggi rimbalzano sulla scena in modo piuttosto casuale e accedono a questi shader in modo disordinato, riducendo l’utilizzo dell’unità della GPU mentre ciò avviene. Il SER combatte questo problema raggruppando gli shader più disparati, evitando che la natura dispersiva dei dati venga acceduta dalla GPU. Cyberpunk 2077 sembra utilizzare questo sistema, anche se, come nel caso delle differenze di cache L2, è difficile valutare le implicazioni sulle prestazioni nel mondo reale, perché non si tratta di funzioni che possono essere disattivate o riattivate a scopo di benchmarking.
Negli ultimi quattro anni si sono registrati notevoli miglioramenti anche dal punto di vista del software, con enormi incrementi di efficienza. In pratica, gli sviluppatori hanno sviluppato modi per sparare una quantità simile di raggi ottenendo un ritorno visivo molto migliore a parità di prestazioni. Uno di questi progressi chiave proviene da ReStir. ReStir è l’acronimo di Spatiotemporal Reservoir Resampling e cerca di rispondere alla domanda su come tracciare i raggi da una moltitudine di sorgenti luminose diverse, un aspetto cruciale se si considera che Cyberpunk 2077 può avere così tante sorgenti luminose nel suo mondo impregnato di neon. Nel ray tracing, per ottenere risultati di illuminazione accurati, si campiona in modo molto rumoroso. Si inviano raggi nella scena per capire dove c’è e dove non c’è la luce e i risultati possono essere incredibilmente rumorosi, quindi servono molti, molti raggi per ottenere un risultato decente.
![](https://i0.wp.com/assetsio.reedpopcdn.com/Tech-Focus-Cyberpunk-2077-Overdrive-HEVC.mp4_snapshot_14.46_%5B2023.04.22_15.34.53%5D.jpg?resize=690%2C388&ssl=1)
Questo è il motivo per cui il tracciamento dell’illuminazione in Cyberpunk è una sfida: ci sono luci dappertutto e si può girare un angolo e vedere improvvisamente una serie di luci completamente imprevedibili. Un tracciatore di percorsi tradizionale richiederebbe così tanti raggi che non sarebbe più performante in tempo reale prima di iniziare ad avere un bell’aspetto. Per questo motivo, in Quake 2 è relativamente facile tracciare l’illuminazione: ci sono poche sorgenti luminose in ogni scena, e i livelli sono piccoli e preconfezionati in modo tale che sia facile trovare e tracciare le luci quando ne stanno per arrivare di nuove sullo schermo e iniziano a influenzare i pixel che il giocatore può vedere.
Il modo in cui i raggi vengono tracciati alle luci in Quake 2 RTX è del tutto insostenibile per ottenere buone immagini e prestazioni in un gioco come Cyberpunk 2077: questo metodo è obsoleto per un gioco moderno, quindi per rendere possibile Cyberpunk 2077 è stato necessario introdurre nuovi metodi che non esistevano nel 2018 o nel 2019. È qui che entra in gioco ReStir o nella sua forma di RTXDI: l’algoritmo riutilizza in modo intelligente i raggi emessi nei fotogrammi precedenti e quelli emessi nel fotogramma corrente per riempire con precisione gli spazi vuoti nel rumore per le fonti di luce locali importanti. ReStir consente di tracciare una quantità minima di raggi e restituisce luci e ombre relativamente prive di rumore da molte, molte fonti di luce. Come si può immaginare, senza questo metodo di tracciamento di molte luci fornito da ReStir, Cyberpunk 2077 RT Overdrive non potrebbe esistere nella sua forma attuale.
Oltre alle ottimizzazioni degli algoritmi di ray-tracing, abbiamo anche grandi progressi nella ricostruzione delle immagini. Nel 2019, quando Quake 2 RTX è stato lanciato, DLSS 2 non esisteva ancora e la prima iterazione della tecnologia non era all’altezza del compito. Al giorno d’oggi, le tecniche di ricostruzione sono un pilastro consolidato del gioco su PC moderno e cambiano il modo in cui possiamo vivere esperienze pesanti per la GPU, come quelle con tracciamento del percorso. Ad esempio, con una RTX 4090 che utilizza Cyberpunk 2077 al massimo, sareste limitati a una risoluzione di circa 1080p se cercate una buona risoluzione di base di 60 fps. Con i progressi dell’apprendimento automatico, però, ora possiamo prendere quell’immagine a 1080p, elaborarla in tempo reale a un costo di prestazioni che consente di ricostruire una quantità di pixel fino a 4 volte superiore e di migliorare notevolmente la qualità dell’immagine.
![](https://i0.wp.com/assetsio.reedpopcdn.com/Tech-Focus-Cyberpunk-2077-Overdrive-HEVC.mp4_snapshot_11.28_%5B2023.04.22_15.43.50%5D.jpg?resize=690%2C388&ssl=1)
Inoltre, ora abbiamo la generazione di fotogrammi assistita dall’apprendimento automatico per migliorare ulteriormente la presentazione. Nel 2019, la generazione di fotogrammi era davvero sconosciuta per i giochi, con l’ultima dimostrazione convincente di questa tecnologia risalente a quasi 10 anni prima, quando LucasArts dimostrò una versione della generazione di fotogrammi in The Force Unleashed 2. Nel 2023 abbiamo effettivamente una tecnologia di generazione di fotogrammi praticabile, e ora possiamo prendere l’immagine 4K DLSS in modalità Performance che abbiamo avuto in precedenza e amplificare il suo frame-rate per aumentare la fluidità percettiva. Grazie alla generazione di fotogrammi e alla ricostruzione dell’immagine, le esperienze ray-tracing pesanti sono molto più fluide e dettagliate di quanto potessero essere solo quattro anni fa.
Cyberpunk 2077 RT Overdrive è il risultato dell’unione di molti elementi distinti: progressi hardware, progressi algoritmici del ray tracing e progressi nell’elaborazione delle immagini, tutti avvenuti con una rapidità sorprendente. Tuttavia, questo non è il punto di arrivo del viaggio. RT Overdrive ha ancora dei limiti visivi e prestazionali da risolvere.
Una delle prime limitazioni è il modo in cui gestisce gli elementi renderizzati in avanti, ad esempio gli elementi trasparenti come il vetro. Questi elementi sono il motivo per cui descriverei Cyberpunk 2077 come “quasi path-traced” anziché “completamente path-traced”, poiché questi materiali non sono ancora completamente gestiti tramite ray-tracing come la geometria opaca del mondo. Si tratta di un’area di ricerca ancora aperta, ma abbiamo già visto accenni in altri titoli a ciò che potrebbe accadere.
Quake 2 RTX aveva un rendering del vetro spesso molto convincente, così come il titolo Chernobylite dell’Unreal Engine 4, che presentava una rifrazione e un’ombreggiatura del vetro in ray-tracing di grande effetto. Immagino che questa sarà una delle aree che potranno essere migliorate con ulteriori patch di Cyberpunk RT Overdrive in futuro… perché sì, questa rimane una “anteprima tecnologica” in pieno sviluppo.
Un’altra limitazione riguarda la quantità di rimbalzi tracciati che si verificano sulla geometria opaca: attualmente sono due rimbalzi, il che è davvero sufficiente dal punto di vista del realismo percettivo, ma ci sono potenziali condizioni di illuminazione che si possono immaginare in cui un maggior numero di rimbalzi potrebbe essere utile. In base a quanto mi è stato riferito da un ingegnere del progetto, credo che Cyberpunk 2077 potrebbe essere aggiornato per utilizzare il caching neurale della radianza. In base alla presentazione del 2021, la cache della radianza neurale al posto di altri metodi avrebbe dei vantaggi interessanti per Cyberpunk 2077.
Per prima cosa, includerebbe le informazioni speculari nella cache, in modo che i riflessi multirimbalzo possano essere gestiti dalla cache, cosa che altre tecniche non fanno e, data la quantità di materiali sintetici e metalli nel mondo di Cyberpunk, questo potrebbe essere un grande vantaggio. Inoltre, fornirebbe informazioni sull’illuminazione diffusa, in modo che le condizioni di ombra più estreme possano essere rappresentate accuratamente nel gioco con meno rumore e lag. Attualmente, le aree illuminate principalmente in modo indiretto possono soffrire di disturbi. La memorizzazione delle informazioni sull’illuminazione in una cache di radianza neurale potrebbe alleviare completamente questo problema.
L’ultima limitazione di Cyberpunk 2077 Overdrive riguarda le prestazioni, il che ha senso visto che si tratta di un gioco AAA con un’illuminazione quasi completamente path-traced, tuttavia ritengo che ci sia ancora spazio per miglioramenti sul lato software. Per esempio, al momento il gioco non sfrutta le OMM, ovvero le micromappe di opacità. Si tratta di un formato di risorse che può essere letto dalle GPU Ada Lovelace e che velocizza il costo del tracciamento della geometria alfa testata, come ad esempio la vegetazione.
Se si visitano le aree del gioco con molto fogliame in questo momento, si può notare come siano molto più pesanti rispetto alle aree con geometria opaca standard, quindi mi aspetto un miglioramento delle prestazioni. Ma al di là di questo è difficile saperlo, ma una cosa che ho trovato interessante è che il gioco a 4K nativi su una RTX 4090 funziona con un frame-rate simile alle prestazioni di una RTX 2080 Ti con Quake 2 RTX.
Se la tendenza all’evoluzione dell’hardware e del software continua, le possibilità sono intriganti nei prossimi anni, il tutto prima dell’arrivo della prossima generazione di hardware per console. Dovremmo aspettarci di vedere le prestazioni dell’attuale RTX 4090 filtrare nelle parti di fascia bassa, mentre le GPU di fascia più alta dovrebbero essere in grado di spingersi ancora più in là. Già oggi si nota un netto divario tra le capacità delle console e quelle dei PC e, a seconda della volontà degli sviluppatori e del continuo evangelizzazione di Nvidia nei confronti dell’RT, dovremmo iniziare a vedere immagini di questa qualità in un numero maggiore di giochi. Nel frattempo, è ovvio che RT Overdrive merita una visita, insieme ai nostri consigli su come far funzionare questa tecnologia sull’attuale hardware grafico serie 20 e serie 30.