▷ Cos'è la rasterizzazione e qual è la sua differenza con il ray tracing
Sommario:
Dopo l'imminente rilascio delle nuove schede grafiche Nvidia RTX. Volevamo scrivere un articolo su cos'è la rasterizzazione e qual è la sua differenza con Ray Tracing. Pronto a sapere tutto ciò che devi sapere su questa tecnologia? Cominciamo!
Che cosa sono le differenze di rasterizzazione e ray tracing
La grafica per PC in tempo reale utilizza da tempo una tecnica chiamata "rasterizzazione" per visualizzare oggetti tridimensionali su uno schermo bidimensionale. È una tecnica rapida e i risultati sono diventati molto buoni negli ultimi anni, anche se non è buono come può fare il ray tracing.
Con la tecnica raster, gli oggetti che vedi sullo schermo sono creati da una maglia di triangoli virtuali o poligoni, che creano modelli tridimensionali di oggetti. In questa maglia virtuale, gli angoli di ciascun triangolo, noti come vertici, intersecano i vertici di altri triangoli di dimensioni e forme diverse. Per questo motivo, molte informazioni sono associate a ciascun vertice, inclusa la sua posizione nello spazio, così come le informazioni sul colore, la trama e il suo "normale", che viene utilizzato per determinare come si affaccia la superficie di un oggetto..
I computer convertono quindi i triangoli dei modelli 3D in pixel o punti su uno schermo 2D. A ciascun pixel può essere assegnato un valore di colore iniziale dai dati memorizzati nei vertici del triangolo. Elaborazione o "ombreggiatura" aggiuntiva del pixel, che include la modifica del colore del pixel in base al modo in cui le luci della scena colpiscono il pixel e l'applicazione di una o più trame al pixel, combinate per generare il colore finale applicato a un pixel.
Riassumiamo le migliori guide hardware che dovrebbero interessarti:
- I migliori processori sul mercato Le migliori schede madri sul mercato La migliore memoria RAM sul mercato Le migliori schede grafiche sul mercato I migliori SSD sul mercato
Questo è intensivo dal punto di vista computazionale, poiché potrebbero esserci milioni di poligoni usati per tutti i modelli di oggetti in una scena e circa 8 milioni di pixel su uno schermo 4K. A tutto ciò dobbiamo aggiungere che ogni immagine visualizzata su uno schermo di solito si aggiorna da 30 a 90 volte al secondo. Inoltre, i buffer di memoria, lo spazio temporaneo riservato per velocizzare le cose, vengono utilizzati per rendere in anticipo i frame prima che vengano visualizzati sullo schermo.
Una profondità o "buffer z" viene anche utilizzata per memorizzare le informazioni sulla profondità dei pixel per garantire che gli oggetti frontali nella posizione xy dello schermo di un pixel vengano visualizzati e che gli oggetti dietro l'oggetto più frontale rimangano nascosti. Questo è il motivo per cui i giochi per computer moderni e ricchi di grafica si basano su potenti GPU, che sono in grado di eseguire milioni di calcoli ogni secondo.
Ray Tracing funziona in modo totalmente diverso. Nel mondo reale, gli oggetti 3D che vediamo sono illuminati da sorgenti luminose e i fotoni che compongono la luce possono rimbalzare da un oggetto all'altro prima di raggiungere gli occhi dello spettatore. Inoltre, la luce può essere bloccata da alcuni oggetti, creando ombre, oppure la luce può essere riflessa da un oggetto all'altro, come quando vediamo le immagini di un oggetto riflesse sulla superficie di un altro. Abbiamo anche rifrazioni, che causano un cambiamento nella velocità e nella direzione della luce mentre attraversa oggetti trasparenti o semitrasparenti, come vetro o acqua.
Ray Tracing riproduce questi effetti, è una tecnica descritta per la prima volta da Arthur Appel di IBM, nel 1969. Questa tecnica traccia il percorso della luce che passa attraverso ogni pixel su una superficie di visualizzazione 2D e lo trasforma in un modello 3D della scena. Il successivo importante passo in avanti avvenne un decennio più tardi in un articolo del 1979 intitolato "Un modello di illuminazione migliorata per schermi ombreggiati", Turner Whitted, ora membro di Nvidia Research, mostrò come catturare riflessi, ombre e rifrazioni con il Ray Tracing.
Con la tecnica Whitted, quando un fulmine colpisce un oggetto nella scena, le informazioni sul colore e sull'illuminazione nel punto di impatto sulla superficie dell'oggetto contribuiscono al colore dei pixel e al livello di illuminazione. Se il raggio rimbalza o attraversa le superfici di oggetti diversi prima di raggiungere la sorgente luminosa, le informazioni sul colore e sull'illuminazione di tutti quegli oggetti possono contribuire al colore finale del pixel.
Ti consigliamo come installare Ubuntu Tweak in Ubuntu 16.04Un'altra coppia di documenti negli anni '80 ha gettato il resto delle basi intellettuali per la rivoluzione della computer grafica, che ha stravolto il modo in cui i film vengono realizzati. Nel 1984 Robert Cook, Thomas Porter e Loren Carpenter di Lucasfilm descrissero in dettaglio come Ray Tracing potesse incorporare varie tecniche cinematografiche comuni come motion blur, profondità di campo, penombra, traslucenza e riflessi sfocati che, fino ad allora, solo potrebbero essere creati con telecamere. Due anni dopo, il lavoro del professore CalTech Jim Kajiya, "The Rendering Equation", ha completato il lavoro di mappatura del modo in cui la grafica computerizzata è stata generata alla fisica per rappresentare meglio il modo in cui la luce si diffonde. in una scena.
Combinando tutta questa ricerca con le moderne GPU, i risultati sono immagini generate al computer che catturano ombre, riflessi e rifrazioni in modi che possono essere indistinguibili dalle foto o dai video del mondo reale. Questo realismo è il motivo per cui Ray Tracing è arrivato a conquistare il cinema moderno. L'immagine seguente generata da Enrico Cerica usando OctaneRender, mostra una distorsione dei colpi di vetro nella lampada, un'illuminazione diffusa nella finestra e un vetro smerigliato nella lanterna sul pavimento riflessa nell'immagine della cornice.
Ray Tracing è una tecnica estremamente esigente in termini di potenza, motivo per cui i cineasti fanno affidamento su un gran numero di server o farm per creare le loro scene in un processo che può richiedere giorni, persino settimane, per generare effetti speciali complessi. Indubbiamente, molti fattori contribuiscono alla qualità generale delle prestazioni di grafica e ray tracing. Infatti, poiché il ray tracing è così intenso dal punto di vista computazionale, viene spesso utilizzato per rappresentare quelle aree o oggetti in una scena che beneficiano maggiormente della qualità visiva e del realismo della tecnica, mentre il resto della scena viene elaborato mediante rasterizzazione.
Cosa ne pensi del nostro articolo su cos'è la rasterizzazione? L'hai trovato interessante? Attendiamo i tuoi commenti!
Qual è la differenza tra hardware e software?
Nel mondo della tecnologia, sia hardware che software vanno di pari passo, uno non può esistere senza l'altro e in questo articolo lo spieghiamo.
Qual è la differenza tra la cancellazione dei dati e la cancellazione della cache?
Qual è la differenza tra la cancellazione dei dati e la cancellazione della cache? Scopri di più sulla differenza tra cancellare i dati e svuotare la cache su Android.
Apprendimento automatico: cos'è e qual è la sua relazione con l'IA?
Spiegheremo brevemente cos'è l'apprendimento automatico e esamineremo alcune delle applicazioni più interessanti di questa tecnologia.