Che cos'è Ray Tracing?
Recentemente una demo di Epic, i creatori del motore di gioco Unreal, ha sollevato le sopracciglia per i suoi effetti luminosi fotorealistici. La tecnica è un grande passo avanti per il ray tracing. Ma cosa significa??
Cosa fa Ray Tracing
In parole semplici, ray tracing è un metodo utilizzato da un motore grafico per calcolare il modo in cui le sorgenti di luce virtuale influenzano gli oggetti all'interno del loro ambiente. Il programma letteralmente tracce il raggi di luce, usando i calcoli sviluppati dai fisici che studiano il modo in cui si comporta la luce reale.
I motori grafici come Unreal o Unity usano il ray tracing per riprodurre effetti di illuminazione realistici - ombre, riflessi e occlusioni - senza doverli renderizzare come oggetti singoli. Sebbene sia piuttosto intensivo da un punto di vista dell'elaborazione, usarlo per rendere solo ciò che la videocamera (cioè il lettore) deve vedere in un dato momento significa che può essere più efficiente di altri, vecchi metodi di simulazione della luce realistica in ambienti virtuali. Gli effetti di illuminazione specifici sono resi su un unico piano bidimensionale alla prospettiva dello spettatore, non costantemente in tutto l'ambiente.
Tutto ciò è stato ottenuto con una matematica incredibilmente complessa, sia in termini di determinazione del modo in cui la luce virtuale si comporta e quanto di questi effetti sono visibili allo spettatore o al giocatore in un dato momento. Gli sviluppatori possono utilizzare versioni meno complesse delle stesse tecniche per tenere conto dell'hardware meno potente o di un gameplay più veloce e fluido.
Il ray tracing è un approccio generale alla grafica piuttosto che una tecnica specifica, sebbene sia stato costantemente perfezionato e migliorato. Può essere utilizzato in grafici pre-renderizzati, come gli effetti speciali visti nei film di Hollywood, o in motori in tempo reale, come la grafica che si vede nel mezzo del gameplay durante un gioco per PC.
Novità di Ray Tracing?
La demo che ha recentemente ottenuto il ray tracing nelle notizie è quella nel video qui sotto, un breve Guerre stellari schizzo che coinvolge alcuni stormtroopers con tempi davvero brutti. La settimana scorsa è stato mostrato alla conferenza degli sviluppatori di giochi. È stato creato da Epic Games (i creatori dell'onnipresente Unreal Engine) in collaborazione con NVIDIA e Microsoft per mettere in mostra le nuove tecniche di ray tracing.
Fuori dal contesto, è solo un video goofy. Ma il punto importante è che viene eseguito in tempo reale, come un videogioco, non come un film della Pixar. Il video qui sotto mostra il presentatore che ingrandisce la telecamera attraverso la scena con controlli in tempo reale, cosa che non è possibile con la grafica prerender.
In teoria, se il tuo PC da gioco è abbastanza potente, può generare una grafica del genere in qualsiasi gioco usando i nuovi effetti di illuminazione del raytracing nella prossima versione della demo di Unreal.
La tecnologia brilla davvero (capito?) Perché questa demo specifica include molte superfici riflettenti e specchiate con geometria irregolare. Scopri come l'ambiente si riflette nei pannelli curvi dell'armatura cromata del capitano Phasma. Altrettanto importante, notate come si riflette più debolmente e diffusamente sull'armatura bianca dei normali stormtroopers. Questo è un livello di illuminazione realistica che non è disponibile nei giochi di oggi.
Renderà i miei giochi fantastici?
Bene, sì, in circostanze molto specifiche. Questo livello avanzato di ray tracing renderà più semplice per i videogiochi il rendering di effetti di luce più impressionanti, ma in realtà non rende più dettagliata la struttura poligonale della grafica. Non aumenta la risoluzione delle trame o migliora la fluidità delle animazioni. In breve, renderà l'illuminazione realistica, e questo è quanto.
La demo di cui sopra è particolarmente drammatica perché gli sviluppatori hanno scelto personaggi e ambienti in cui quasi ogni superficie splende o riflette la luce. Se usi la stessa tecnologia per rendere, per esempio, il protagonista di The Witcher serie che cavalca il suo cavallo attraverso la campagna, non vedrai superfici particolarmente riflettenti tranne la sua spada e forse un po 'd'acqua. Fondamentalmente, le tecniche di ray tracing non faranno molto per migliorare il rendering della sua pelle, la pelliccia del cavallo, la pelle dei suoi vestiti, e così via.
I titoli che provenivano da questa dimostrazione sostenendo che avrebbe prodotto "grafica di film di successo" erano un po 'di iperbole, che potrebbe essere vero se stai giocando a un livello ambientato in una sala di specchi, ma questo è tutto.
Quando vedrò questa roba nei miei giochi?
La dimostrazione GDC è stata un esempio di una tecnica di ray tracing proprietaria chiamata RTX, ora sviluppata da NVIDIA. È previsto il debutto nella prossima serie di schede grafiche GeForce di fascia alta, che attualmente si vocifera di debuttare entro la fine dell'anno con i numeri del modello 20XX. Come altre tecnologie grafiche proprietarie, come PhysX di NVIDIA, probabilmente non sarà disponibile per i giocatori che utilizzano schede grafiche di altri produttori.
Detto questo, RTX utilizza anche una nuova funzionalità del sistema di API DirectX specificamente per ray tracing (chiamato raytracing di Microsoft). Quindi, mentre le demo specifiche sopra sono una collaborazione tra Epic e NVIDIA, non c'è nulla che impedisca ai produttori concorrenti come AMD e Intel di creare sistemi simili con risultati simili.
Per dirla semplicemente, vedrai giochi PC di fascia alta iniziare a usare queste tecniche verso la fine del 2018 e l'inizio del 2019. I giocatori che investono in nuove schede grafiche in quel periodo vedranno il massimo beneficio, ma se già hai un sistema di gioco di fascia alta, potresti essere in grado di utilizzare alcuni di questi effetti in giochi compatibili con DirectX sul tuo hardware attuale.
A causa dei lunghi tempi di sviluppo e degli obiettivi hardware statici, i giocatori della console non vedranno questa grafica avanzata fino a quando il prossimo round di console di gioco sarà rilasciato in diversi anni.
Credito immagine: NVIDIA, Epic / YouTube, Guru3D / YouTube