Scopri come il ray tracing sta rivoluzionando la grafica dei videogiochi, offrendo un realismo senza precedenti. Impara come funziona questa tecnologia avanzata e su quali dispositivi è disponibile, dai PC alle console e ai telefoni di fascia alta. Preparati a immergerti in mondi virtuali incredibilmente realistici con le ultime innovazioni nel campo della grafica computerizzata.
La maggior parte della storia dei videogiochi è stata una continua ricerca di una grafica migliore e di un’elaborazione più veloce. I primi videogiochi non si sforzavano di raggiungere la verosimiglianza della vita, perché la potenza dell’hardware per rendere le immagini realistiche non esisteva su scala consumer. Con l’avanzare dell’hardware, è aumentata anche l’ambizione degli sviluppatori di videogame. Ciò che un tempo era considerato impossibile per i giochi domestici è ora un dato di fatto, con i videogiochi moderni che offrono un livello di dettaglio e di realismo che era inimmaginabile solo pochi decenni fa.
Questa rivoluzione tecnologica, da tempo strumento prezioso per gli studi cinematografici, si chiama ray tracing. Potreste averlo sul vostro computer o sulla vostra console. Ma cos’è questa tecnologia magica che aggiunge un realismo senza precedenti ai vostri giochi e su quali telefoni di fascia alta è disponibile? Il ray tracing è una tecnica di rendering che simula il comportamento reale della luce per creare ombre, riflessi e illuminazione incredibilmente realistici. Attualmente, è disponibile su GPU di alta gamma come la GeForce RTX di NVIDIA e la Radeon RX di AMD, e anche su alcuni telefoni di fascia alta come i Samsung Galaxy S23 e gli iPhone 15. Questa tecnologia sta trasformando l’esperienza di gioco, portando i mondi virtuali a un nuovo livello di immersione e autenticità.
Il ray tracing in breve
Il concetto alla base del ray tracing è semplice: i fotoni della luce si muovono in linea retta, riflettendosi e rifrangendosi, fino a raggiungere gli occhi, permettendoci di vedere colori e luminosità. Il ray tracing imita il comportamento reale della luce in un ambiente virtuale, producendo un’illuminazione più realistica di quanto fosse possibile in precedenza in tempo reale su un dispositivo consumer. Questa tecnologia, utilizzata in giochi e applicazioni grafiche, offre un’esperienza visiva incredibilmente dettagliata e naturale. Per comprendere appieno il funzionamento del ray tracing, è necessario approfondire la questione, poiché coinvolge complessi algoritmi matematici che tracciano il percorso di ogni singolo raggio di luce e calcolano le sue interazioni con le superfici degli oggetti in una scena virtuale, ottenendo effetti visivi avanzati come ombre morbide, riflessi accurati e rifrazioni realistiche.
Un’introduzione alla grafica computerizzata
Le prime grafiche erano costituite da linee chiamate vettori e venivano utilizzate in diversi giochi arcade popolari dei primi anni ’80, come Asteroids, Star Wars e Tempest. Questi giochi erano costituiti da forme bidimensionali disegnate sullo schermo di un CRT specializzato. La generazione successiva di giochi per computer utilizzava lo stesso tipo di schermo dei televisori, che non produceva direttamente grafica vettoriale. I display vettoriali utilizzano un fascio di elettroni per tracciare linee tra due coordinate. Gli schermi televisivi spazzano il fascio di elettroni orizzontalmente sullo schermo, dall’alto verso il basso, in una scansione raster. Il termine “raster” deriva da “rastrum”, la parola latina che significa “rastrello”, a causa del modo in cui il fascio di elettroni “rastrella” lo schermo.
Sebbene sia possibile visualizzare un’immagine vettoriale su uno schermo raster, è più facile utilizzare una serie di quadrati (chiamati pixel). I primi giochi basati su raster/pixel si svolgevano in semplici mondi bidimensionali composti da oggetti pixel chiamati sprite (si pensi a Shovel Knight e Vampire Survivors). Quando i progettisti di giochi hanno iniziato a esplorare la terza dimensione, il rendering della grafica è diventato più costoso dal punto di vista computazionale.
I giochi basati sugli sprite memorizzano le informazioni grafiche in un array di valori di colore. I giochi 3D costruiscono oggetti e ambienti virtuali con gli stessi vettori utilizzati nei primi anni ’80 (solo che ora sono in tre dimensioni invece che in due) e utilizzano algoritmi per determinare la loro visualizzazione in base alla posizione della telecamera. Poiché la maggior parte dei display dei computer e dei televisori si basa sulla grafica a pixel, i progettisti di giochi avevano bisogno di un modo per prendere i dati vettoriali tridimensionali e convertirli in dati raster in grado di essere visualizzati sui nostri schermi. Questo processo si chiama rasterizzazione.
Il metodo comune per rasterizzare una scena 3D consiste nell’identificare i triangoli visibili alla telecamera. Oltre alla posizione, a ogni triangolo sono associate informazioni sul colore e sulla texture che determinano la visualizzazione sullo schermo e l’interazione con la luce. In pratica, c’è molto di più, ma questo è il modo in cui la maggior parte dei giochi esegue il rendering. La rasterizzazione dei triangoli non è in grado di renderizzare le ombre e i riflessi senza ricorrere a trucchi, come il rendering doppio di un oggetto o l’esecuzione di più rendering della scena (che consumano preziosa potenza di calcolo). Per modellare accuratamente le ombre e i riflessi in un ambiente dinamico, è necessaria una tecnica che imiti il comportamento della luce e il modo in cui interagisce con il mondo.
Ray tracing, a cosa serve?
Il ray tracing modella il percorso della luce per produrre dati di illuminazione e colore nelle scene 3D. Nonostante la semplicità del concetto, l’implementazione è complessa e ha richiesto molto tempo (il primo articolo accademico sul ray tracing è stato pubblicato nel 1968). Il problema è che una semplice lampadina non produce miliardi o trilioni di fotoni al secondo, ma oltre 200 quadrilioni. Anche se la modellazione di questi fotoni produrrebbe l’immagine più accurata, è impossibile calcolare questi numeri in tempo reale.
Il ray tracing segue i raggi luminosi all’indietro dalla telecamera, attraverso ogni pixel da visualizzare e infine fino alla sorgente luminosa. Questo limita il numero di calcoli al punto da rendere possibili esperienze interattive. Il ray tracing in tempo reale è ancora così impegnativo dal punto di vista computazionale che il suo utilizzo da parte dei consumatori è limitato.
L’uso più diffuso del ray tracing non è il rendering di intere scene (nessun videogioco lo fa al momento). Viene utilizzato per creare luci, ombre e riflessi realistici insieme alle tecniche di rendering tradizionali. Il ray tracing di base segue un raggio verso un oggetto e poi verso le sorgenti di luce. L’oggetto è in ombra se il percorso o i percorsi verso la sorgente luminosa sono ostruiti. Altrimenti, l’illuminazione viene determinata in base alla distanza e all’angolo. Se il raggio colpisce un oggetto riflettente o rifrangente, viene rimbalzato o piegato finché non incontra un altro oggetto, che viene renderizzato sulla superficie riflettente.
Una versione potenziata del ray tracing, nota come path tracing, viene utilizzata per creare un’illuminazione naturale nelle scene. Mentre il ray tracing tende a limitarsi a uno o due rimbalzi, il path tracing segue un raggio di luce attraverso molte riflessioni, raccogliendo dati di illuminazione lungo il percorso. In questo modo è possibile ottenere l’illuminazione indiretta, diffusa e globale, che può essere facilmente trascurata nel gioco, ma che aggiunge una patina di verosimiglianza che migliora l’immersione del gioco.
Quali sono i prossimi sviluppi del ray tracing?
Il ray tracing è una tecnologia relativamente nuova per i videogiochi (nei film viene utilizzato da oltre 20 anni), quindi c’è spazio per crescere. Ora che la mania delle criptovalute è passata, è possibile acquistare schede video con ray tracing a partire da circa 200 euro. Man mano che un numero maggiore di persone mette le mani su questa tecnologia, verranno realizzati più giochi che la sfruttano. Più tempo gli sviluppatori dedicano al ray tracing, più troveranno modi per ottimizzarlo.
Una recente ottimizzazione ha il potenziale di più che raddoppiare i frame rate dei giochi eseguiti su hardware NVIDIA. Si chiama deep learning super sampling (DLSS). Sfrutta l’esperienza di NVIDIA nel campo dell’intelligenza artificiale e la combina con la sua esperienza nel ray tracing. Il DLSS fa alcune cose:
- Utilizza l’intelligenza artificiale per aumentare la scala dei rendering di fotogrammi a bassa risoluzione.
- Esamina due rendering di fotogrammi e utilizza l’intelligenza artificiale per creare un nuovo fotogramma tra di essi.
- Aumenta i dati di ray tracing utilizzando l’intelligenza artificiale per aggiungere illuminazione e riflessioni più dettagliate.
Se volete provare il ray tracing in tempo reale nei vostri giochi, dovete disporre di una GPU di fascia alta, come la serie di schede video NVIDIA GeForce RTX o una AMD Radeon RX 6000 o superiore. Se siete avventurosi, provate le schede Arc di Intel. La linea di schede NVIDIA RTX è la più popolare tra i giocatori di PC, ma AMD è l’artefice del lavoro di ray tracing software della PlayStation 5 e della Xbox Series X. Si possono trovare anche portatili da gioco alimentati sia da Nvidia che da AMD.
Se giocate in movimento e volete un telefono che supporti il ray tracing, le opzioni sono limitate, ma sono disponibili. Se vivete nell’ecosistema Android, troverete il ray tracing su smartphone della serie Galaxy S23 o Galaxy S24 di Samsung. Se preferite i prodotti, la iPhone 15 può gestire le vostre esigenze di ray tracing.
Preparatevi al ray tracing!
Il ray tracing è una tecnologia di nicchia, ma non lo sarà ancora per molto. Se non avete accesso all’hardware per il ray tracing, potete provarlo con GeForce Now di NVIDIA o con i servizi Xbox Cloud Gaming di Microsoft, entrambi con pro e contro.