Back

Motori Transform e Lighting di Seconda Generazione

 
 
Realismo in Tempo Reale


Con l'introduzione della GPU GeForce 256 (Graphics Processing Unit), NVIDIA ha creato un'innovazione del mercato dei PC. L'introduzione della GPU, con hardware integrato, Transform and Lighting, rappresenta una svolta nella grafica 3D che permette una nuova gamma di applicazioni.

La GPU permette un livello di realismo che era impossibile raggiungere senza i super computer grafici costosissimi di ieri. I personaggi animati che scorrono sulla GPU diventano veri e molto dettagliati, con complesse espressioni facciali e movimenti armoniosi. Il mondo in cui questi personaggi si muovono può ora essere popolato in modo lussureggiante con vita organica (alberi, cespugli, piante) e con dettagli architettonici e strutturali che diamo per scontati nel mondo reale.

Nell'era pre-GPU, i muri degli edifici erano costruiti con il minor numero di dettagli possibile ed il risultato si traduceva in mancanza di 3D. Questa mancanza verrà ora colmata dalla GPU con dettagli del mondo reale: arredamenti realistici, apparecchi, luci, prodotti di consumo, abbigliamento e veicoli. In breve, il mondo della GPU arriverà ad essere pari a quello reale.
Cos’è una GPU?
GPU è una sigla che significa “unità di processo grafico”. Il GPU è un processore single-chip con integrato transform & lighting, triangle setup/clipping e un motore rendering con la capacità di produrre 10 milioni di poligoni al secondo.

Perchè T&L?
Le prestazioni grafiche 3D sono cresciuti negli ultimi quattro anni con l'enfasi primaria sulle capacità di pixel fill rate e texture-mapping. Questa enfasi ha raccolto tra gli utenti il riconoscimento come più veloce frame rates per una navigazione agevole negli ambienti 3D, ma ha lasciato il compito della geometria dei calcoli del Transform e Lighting alla CPU ospite. Il problema consiste nel fatto che le CPU raddoppiano la loro velocità solo ogni 18 mesi mentre i processori grafici avanzano otto volte di più nello stesso periodo di tempo. Le prestazioni di elaborazione della geometria (T&L) sono così diventate la barriera più significativa per la grafica 3D più sofisticata in un PC tipico.
I processori grafici passano troppo tempo aspettando la CPU! Questa strettoia ha forzato gli sviluppatori di software a limitare la complessità geometrica dei loro caratteri e delle loro ambientazioni 3D per poter mantenere le aspettative sulle prestazioni. I motori integrati Transform sono la migliore soluzione economicamente efficiente, per la risoluzione del problema della strettoia delle prestazioni geometriche e per aprire nuove opportunità agli sviluppatori di software, in modo da permettere loro di aggiungere grandi dettagli geometrici ai loro mondi 3D.


Come funzionano Transform e Lighting?
Transform and lighting sono due procedimenti matematicamente impegnativi. Prima della GPU di GeForce 256, la CPU eseguiva tutti questi calcoli – che impegnavano molto del suo processing power. Ora che la GPU esegue questi calcoli, si potranno notare prestazioni migliori delle applicazioni 3D e la CPU sarà liberà di eseguire funzioni di intensificazione visiva come caratteristiche fisiche e l’intelligenza artificiale.

 

Ognuna delle immagini qui sopra rappresenta la stessa sfera, ma l’immagine all’estrema destra è chiaramente la più realistica delle tre – è stata suddivisa in cinque volte tanti poligoni della sfera all’estrema sinistra. Ciò significa che la sfera a destra richiede cinque volte la prestazione di transform rispetto alla sfera a sinistra Tutto ciò potrebbe non essere importante per una sfera, ma poiché al giorno d’oggi le tipiche scene 3D richiedono centinaia di migliaia di oggetti che devono condividere la capacità di transform e di lighting della CPU, i programmatori di software devono mettere in preventivo i compiti di processing.

Le prestazioni di Transform impongono quanto accuratamente i progettisti di software possono "tessellate" gli oggetti 3D che essi creano, quanti oggetti possono inserire in una scena e quanto sofisticato il mondo 3D può essere. Tessellation è il processo di conversione delle linee curve in una serie di segmenti di linea simili alla curva originaria.Le immagini mostrano un semplice esempio di una sfera tassellata in stadi differenti.

Poiché la GPU sgrava la CPU dal compito di calcolare le trasformazioni – si potranno osservare scene ricche di elementi complessi che non solo hanno un aspetto reale ma si muovono proprio come il loro equivalente in natura. Non solo gli oggetti ed i caratteri saranno complessi – ma nelle scene se ne troveranno in gran numero. 
Con l’illuminazione diffusa non si può vedere dove si concentra la luce sull’oggetto.
Aggiungendo l’illuminazione speculare, si può notare che la luce sta splendendo direttamente sull’oggetto.

Lighting
L’occhio umano è effettivamente più sensibile ai cambiamenti di luminosità che non a quelli di colore. Quindi, gli effetti di illuminazione si avvantaggiano maggiormente delle capacità naturali dell’occhio umano – ciò significa che un’immagine con effetti di illuminazione comunicherà allo spettatore molte più informazioni nello stesso arco di tempo. Ciò è importante in tutte le applicazioni 3D, sia che queste vengano utilizzate nei giochi, nell’insegnamento, in scienza, in medicina o per analisi dei dati.



Diffuse vs. Specular Lighting
L’illuminazione si divide in due categorie principali: diffuse e specular. La Diffuse Lighting presume che la luce toccando un oggetto si disperda in egual modo in tutte le direzioni, cosicché la luminosità della luce riflessa non dipende in alcun modo dalla posizione dello spettatore. Per esempio, quando la luce del solo tocca un campo giochi, la luce si disperde ovunque. La Specular Lighting è differente perché dipende dalla posizione dello spettatore nonché dalla direzione della luce e dall’orientamento dell’oggetto illuminato. Per esempio, il fascio di luce di una pila rimbalzerà con la differenza di un quarto rispetto a quella di un filo d’erba. La Specular Lighting cattura le proprietà di un oggetto similmente ad uno specchio in maniera tale da ottenere effetti come il riflesso e il riverbero.

Le zone di massima luce speculare avanzano sull’oggetto se lo spettatore o l’oggetto si muove verso la fonte luminosa. Per questa ragione esse non possono essere computerizzate a priori o essere statiche. La specular lighting è particolarmente utile per produrre due effetti nelle scene 3D: displacement mapping e per la creazione di differenti materiali per gli oggetti.

L’illuminazione Speculare è importante anche per la rappresentazione dei diversi materiali per oggetti in una scena 3D. Una camicia di seta ha un aspetto differente rispetto ad una di cotone, anche se hanno lo stesso colore. Una grossa differenza sta in come i due materiali riflettono la luce che è catturata con la specular lighting. La specular lighting, unita al texture mapping crea oggetti più realistici in quanto essi possiedono le caratteristiche visive dei materiali presenti nella realtà.

Solo una GPU con un hardware lighting engine può supportare la specular lighting senza influire sulle prestazioni. Mentre i programmatori possono utilizzare il texture mapping per alcuni effetti di illuminazione speculare , essi dovranno rivedere le environment maps in una scena se lo spettatore si muove –che è un procedimento dispendioso in termini di tempo a meno che l’hardware grafico supporti il cube environment mapping.
Key Features

 
 
FacebookTwitterGoogle+LinkedInPinterest