Come funziona la mappatura delle texture UVW?


13

Sto cercando di capire la teoria matematica alla base della mappatura UVW. Qualcuno può spiegarmi come funziona la mappatura UVW? O almeno mi fornisci un puntatore?



Grazie, ma non mi è ancora chiaro il significato di W. C'è qualche tipo di libro da seguire?
Jack

Penso che la W sia solo che le trame di solito hanno 3 canali, non ne so nulla di reale.
Elva,

1
@Yourdoom La W non ha nulla a che fare con il numero di canali della trama. È piuttosto usato per trame 3d o trame prospettiche.
Chris dice Reinstate Monica il

4
XY è XYZ, come UV è UVW. W è solo la lettera usata per descrivere la terza dimensione della trama.
MichaelHouse

Risposte:


14

Questo è il modo in cui lo capisco. Potrebbe essere totalmente sbagliato, ma sono sicuro che qualcuno lo faràfiamma correggimi se sbaglio.

La teoria matematica alla base della mappatura delle texture UVW è simile alla teoria alla base della mappatura delle texture UV.

Vedi il link di Bummzack qui: che cos'è esattamente la mappatura UV e UVW? per avere una spiegazione migliore di cosa sia la mappatura UV. Fondamentalmente, stai mappando un'area di una trama su un'area di una superficie. Interpolazione dei valori intermedi in base a tali mappature.

Stessa cosa con UVW. Tranne ora stai mappando un volume di trama su un volume di superfici. Interpolare i valori nel mezzo. Ora con la 3a dimensione puoi deformare una trama 2d per adattarla meglio a un oggetto.

Vediamo come viene utilizzato nelle trame 3D. Le trame 3D possono essere create da strati di trame 2D e interpolando i texel nel mezzo. Visivamente una trama 3D potrebbe assomigliare a questa:

Esempio di trama 3D

Dove i "piani" nell'asse R sono trame 2D. Se dovessimo impostare ogni livello su un colore solido diverso e applicarlo a un oggetto 3D, otterremmo qualcosa del genere:

Trama 3D applicata

Puoi vedere come i colori solidi sono stati interpolati tra i livelli. Ecco lo stesso tipo di cose, ma con un paesaggio. Dove da cima a fondo, le trame potrebbero essere: neve, roccia, erba, sabbia.

Paesaggio

Ora se stiamo usando solo un "piano" R (una trama 2D), ma mappando un oggetto 3D? Ovviamente questo non offre la stessa flessibilità di più strati di trame, ma sicuramente richiede molto meno lavoro. Tuttavia, solo proiettare una trama 2D su una superficie 3D causerà alcuni problemi. Pensa alla situazione in cui stai brillando un laser su un muro. Con un angolo perpendicolare il punto laser è bello e rotondo. Ad ogni altra angolazione, il punto inizia ad allungarsi e inclinarsi. La stessa cosa accadrà quando si proietta una trama 2D su una superficie 3D. Qualsiasi volto non perpendicolare alla proiezione sarà distorto. Come lo ripariamo? Distorcendo la proiezione. Prendiamo l'esempio del laser, se avessimo un laser che quando brillava su una superficie perpendicolare, era allungato e inclinato. Quando abbiamo brillato quel laser su una parete inclinata, l'angolo poteva "La terza dimensione ci consente di "modellare" la proiezione in modo che si adatti alla superficie a cui miriamo. Ad esempio, una sorta di superficie 3D ondulata potrebbe avere una trama come questa (ma non così scadente):

Trama 2D scadente espansa in 3D

Come ho detto, questa è solo la mia comprensione. Sono d'accordo, non ci sono molte buone informazioni là fuori su questo argomento. Spero che questa risposta (probabilmente sbagliata) spinga qualcuno con più conoscenza dell'argomento a parlare.

Le immagini per le trame 3D provengono da questa pagina: http://www.gpwiki.org/index.php/OpenGL:Tutorials:3D_Textures

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.