Condividi tramite


Mapping di luci con texture

Una mappa chiara è una texture o un gruppo di texture che contiene informazioni sull'illuminazione in una scena 3D. Le mappe di luce mappano le aree di luce e ombra sulle primitive. La fusione di più texture multiple e multipass consente all'applicazione di eseguire il rendering delle scene con un aspetto più realistico rispetto alle tecniche di ombreggiatura.

Affinché un'applicazione esegua il rendering realistico di una scena 3D, deve prendere in considerazione l'effetto che le sorgenti di luce hanno sull'aspetto della scena. Anche se le tecniche come l'ombreggiatura flat e Gouraud sono strumenti preziosi in questo senso, possono non essere sufficienti per le esigenze dell'utente. Direct3D supporta la fusione di texture multiple e a passaggio multiplo. Queste funzionalità consentono all'applicazione di eseguire il rendering delle scene con un aspetto più realistico rispetto alle scene sottoposte a rendering solo con tecniche di ombreggiatura. Applicando una o più mappe di luce, l'applicazione può mappare le aree di luce e ombra alle primitive.

Una mappa chiara è una texture o un gruppo di texture che contiene informazioni sull'illuminazione in una scena 3D. È possibile archiviare le informazioni di illuminazione nei valori alfa della mappa della luce, nei valori di colore o in entrambi.

Se si implementa il mapping della luce usando la fusione di trame a passaggio multiplo, l'applicazione deve eseguire il rendering della mappa della luce sulle primitive al primo passaggio. È necessario usare un secondo passaggio per eseguire il rendering della texture di base. L'eccezione a questo è il mapping della luce speculare. In tal caso, eseguire prima il rendering texture trama di base; poi, aggiungere la mappa di luce.

La fusione di più texture consente all'applicazione di eseguire il rendering della mappa chiara e della texture di base in un unico passaggio. Se l'hardware dell'utente fornisce la fusione di più texture, l'applicazione dovrebbe sfruttarla durante l'esecuzione del mapping della luce. Ciò migliora significativamente le prestazioni dell'applicazione.

Usando le mappe luminose, un'applicazione Direct3D può ottenere un'ampia gamma di effetti di illuminazione quando esegue il rendering delle primitive. Può mappare non solo luci monocromatiche e colorate in una scena, ma può anche aggiungere dettagli come evidenziazioni speculari e illuminazione diffusa.

Le informazioni sull'uso della fusione delle texture Direct3D per eseguire il mapping della luce vengono presentate negli argomenti seguenti.

In questa sezione

Argomento Descrizione

Mappe luminose monocromatiche

Il mapping della luce monocromatica consente agli adattatori meno recenti di eseguire la fusione delle texture a passaggio multiplo, se una scheda di acceleratore 3D usata non supporta la fusione delle texture usando il valore alfa del pixel di destinazione.

Mappe di luce a colori

Una mappa luce colorata usa i dati RGB nella mappa luce per le informazioni sull'illuminazione. Un'applicazione esegue in genere il rendering delle scene 3D in modo più realistico se usa mappe luce colorate.

Mappe di luce speculare

Quando illuminata da una sorgente di luce, oggetti lucidi che utilizzano materiali altamente riflettenti ricevono evidenziazioni speculari. A volte è possibile ottenere evidenziazioni più accurate applicando mappe di luce speculari alle primitive, invece di usare le evidenziazioni speculari prodotte dal modulo di illuminazione.

Mappe di luce diffusa

Le superfici opache hanno un riflesso di luce diffusa. La luminosità della luce diffusa dipende dalla distanza dalla sorgente luminosa e dall'angolo tra la normale superficie e il vettore di direzione della sorgente luminosa. Le mappe della luce delle texture possono simulare un'illuminazione diffusa complessa.

 

Texture