The Matrix . O meglio, molta matematica matriciale.
È roba spaventosa per i non iniziati. In genere ci sono tre matrici 4x4 coinvolte nel trasformare un gruppo di coordinate 3D nello spazio in coordinate 2D sullo schermo (inclusa la profondità nello schermo come Z).
Le matrici 3D sono un insieme di 16 valori in virgola mobile disposti in una griglia 4x4. Gli algoritmi vengono utilizzati per generare i valori richiesti e quindi utilizzando la moltiplicazione matrice-vettore, questi numeri trasformano un vettore tridimensionale (X, Y, Z).
[ 1, 0, 0, 0 ]
[ 0, 1, 0, 0 ]
[ 0, 0, 1, 0 ]
[ 0, 0, 0, 1 ]
Questa è la matrice dell'identità . Essenzialmente non fa nulla alle coordinate di un vettore.
Modello
Il primo è il mondo o la matrice del modello . Questa matrice prende i vertici in un singolo modello (come una cassa) modellato attorno all'origine (0, 0, 0) e li trasforma in coordinate del vertice mondiale. Ciò potrebbe includere il ridimensionamento dell'oggetto, ruotandolo attorno alla sua origine e infine traducendolo nel punto in cui si trova nella scena.
Visualizza
La seconda matrice è la matrice della vista . Questo prende le coordinate del mondo e le trasforma in modo che si trovino nel contesto della vista. Il concetto di telecamera è generalmente utilizzato per generare questa matrice.
La telecamera di solito contiene un vettore di posizione , un vettore di direzione o di destinazione e un vettore verso l' alto . Questo vettore in alto descrive lo "spin" della videocamera.
Questi vettori vengono utilizzati per generare quello che viene chiamato uno sguardo alla matrice.
L'effetto che questo ha è simile alla matrice mondiale nel fatto che sta essenzialmente ruotando e traducendo il mondo intorno alla telecamera per "posizionare" la telecamera.
Una telecamera di 10 unità lungo l'asse X tradurrà le coordinate del mondo di 10 unità nell'altra direzione.
Proiezione
L'ultimo pezzo del puzzle è la matrice di proiezione . In una proiezione prospettica simile a una telecamera, la matrice trasforma le coordinate quasi dello schermo per dare l'illusione di una prospettiva con un campo visivo di x gradi.
Se pensi in termini di angoli dello schermo (per un gioco 640x480), questo è il modo in cui la proiezione "allinea" le coordinate lungo l'asse Z all'interno delle coordinate 2D dello schermo. Per la proiezione ortografica, non viene eseguito alcun ridimensionamento lungo l'asse Z nello schermo. Per la prospettiva, più l'oggetto è lontano, più piccolo diventa in relazione all'estensione dello schermo.