1 Struttura di un sistema grafico e frame buffer Daniele Marini.
-
Upload
nero-di-pietro -
Category
Documents
-
view
219 -
download
0
Transcript of 1 Struttura di un sistema grafico e frame buffer Daniele Marini.
1
Struttura di un sistema grafico e frame buffer
Daniele Marini
2
• Sintesi di immagini a partire da modelli
• Due “momenti” fondamentali:– Modellazione
• Definizione degli oggetti, delle luci, loro posizionamento, proprietà delle superfici
– Rendering• “Calcolo del colore delle superfici”
Il processo grafico
Modeling Rendering
3A. Van Dam
4
Il processo grafico
Modelli geometrici
3D
Definizione dell’
animazione
Informazioni sull’
illuminazione
Rendering
Informazioni di texture
Archiviazione e display
5
Il processo grafico: archiviazione e display
Rendering
HWFramebuffer
Disk File
....
VideoRecorder
6
I fosfori sul monitor
R
G
B
R
R
B G
G
R
R G B R G B
Pixel
Pitch
Pitch
7
Monitor a cristalli liquidi
polarizzatore
vetro
elettrodo
cristallo liquido
diffusore
strato riflettente
luceosservatore
8
Cristalli liquidi a matrice attiva
polarizzatore
vetro
elettrodo
cristallo liquido
luce
filtri colorati
9
Frame Buffer
• Il Frame Buffer è la memoria che registra temporaneamente le immagini generate
Frame Buffer
X address Raster Scan GeneratorY address
Pixel valueDAC
Video controller
CRT
10
Frame buffer
Il Frame Buffer ha dimensioni MxNxnMxN dimesione dell’immagine
n profondità colore• dimensioni tipiche: 640x480, 800x600, 1024x768,
1280x1024, 1400x1050…• Profondità del colore: 8, 16, 24, 32 bit
11
Canali
• RGB: tre canali per definire il colore di un pixel
12
True color e Falso colore
• True color: ogni locazione nel frame buffer contiene il valore di colore assegnato al pixel
• Falso colore: ogni locazione nel frame buffer contiene un indirizzo alla LUT nella quale viene registrato il valore di colore desiderato
13
LUT
• Look Up Table, tabella di ricerca rapida implementata via HW
• Registra i valori di colore (RGB) da attribuire ai pixel
14
• Le CLUT permettono di realizzare effetti particolari– Pseudo-colori per la visualizzazione di immagini scientifiche– Blending– Etc.
• In un sistema a 24 bit (3x8 bit) ciascun canale RGB ha una sua LUT (0-255)
LUT
15
Molteplici buffer
• Double buffer– Un secondo buffer “di appoggio”
• Depth buffer– Per memorizzare le informazioni di profondità
• A-buffer
• ....
16
L’Alpha channel
• Assume valori tra 0 e 1, indica come miscelare (blending) più immagini
• “1” indica un pixel “opaco”, “0” indica un pixel completamente trasparente
BA II )1( αα −+
17
“Alfa” channel
• Contiene valori tra 0 e 1, indica come miscelare più immagine con operatori aritmetici
• Es.: senza alfa: ImmaA+ImmB=def pA(x,y)+pB(x,y) clamp(255)
• Clamp?0 se pA(x,y)+pB(x,y) ≤0
255 se pA(x,y)+pB(x,y) ≥255
pA(x,y)+pB(x,y) altrimenti
18
Risoluzione e dinamica
• La dimensione del frame buffer determina la dimensione della immagine
• La lunghezza di parola nel frame buffer determina il numero di colori simultaneamente visualizzabili: la dinamica di colore
• Parole di 32 bit consentono di registrare informazioni sul canale “alfa” per altri effetti: R,G,B +
19
Perché tre colori? Sistema visivo umano!
La tecnologia chiave:il video!