Formati di superficie (Direct3D 9)

In Direct3D tutte le immagini bidimensionali (2D) sono rappresentate da un intervallo lineare di memoria denominato superficie. Una superficie può essere considerata come una matrice 2D in cui ogni elemento contiene un valore di colore che rappresenta una piccola sezione dell'immagine, denominata pixel. Il livello di dettaglio di un'immagine è definito sia dal numero di pixel necessari per rappresentare l'immagine che dal numero di bit necessari per lo spettro dei colori dell'immagine. Ad esempio, un'immagine di 800 pixel di larghezza di 600 pixel con 32 bit di colore per ogni pixel (scritta come 800x600x32) sarà più dettagliata di un'immagine di 640 pixel di larghezza di 480 pixel con 16 bit di colore per ogni pixel (scritto come 640x480x16). Analogamente, l'immagine più dettagliata richiederà una superficie più grande per archiviare i dati. Per un'immagine 800x600x32, le dimensioni della matrice della superficie saranno 800x600 e ogni elemento conterrà un valore a 32 bit per rappresentarne il colore.

Tutte le superfici hanno una dimensione e archivia un numero specifico di bit che rappresentano il colore. I bit che rappresentano il colore sono separati in singoli elementi di colore: rosso, verde e blu. In Direct3D tutti gli elementi colore sono definiti dal tipo enumerato D3DFORMAT . Un formato di colore Direct3D viene suddiviso nel numero di bye riservati per ogni colore. Ad esempio, un formato di colore a 16 bit in Direct3D viene definito come D3DFMT_R5G6B5, dove 5 bit sono riservati per rosso (R), 6 bit per il verde (G) e 5 bit per blu (B).

Superfici Direct3D