Computer Graphics Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di...
-
Upload
paolo-viviani -
Category
Documents
-
view
218 -
download
2
Transcript of Computer Graphics Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di...
![Page 1: Computer Graphics Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2005/06 prove generali.](https://reader035.fdocument.pub/reader035/viewer/2022062418/5542eb50497959361e8c009b/html5/thumbnails/1.jpg)
Computer Graphics
Marco Tarini
Università dell’Insubria
Facoltà di Scienze MFN di Varese
Corso di Laurea in Informatica
Anno Accademico 2005/06
prove generali di compito
![Page 2: Computer Graphics Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2005/06 prove generali.](https://reader035.fdocument.pub/reader035/viewer/2022062418/5542eb50497959361e8c009b/html5/thumbnails/2.jpg)
M a r c o T a r i n i ‧ C o m p u t e r G r a p h i c s ‧ 2 0 0 5 / 0 6 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 2/40
Esercizio Rasterizzazione
• Dati gli attributi definiti nei vertici (blu)quanto varra' l'attributo definito per frammento rosso ?
0.5
1
3
![Page 3: Computer Graphics Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2005/06 prove generali.](https://reader035.fdocument.pub/reader035/viewer/2022062418/5542eb50497959361e8c009b/html5/thumbnails/3.jpg)
M a r c o T a r i n i ‧ C o m p u t e r G r a p h i c s ‧ 2 0 0 5 / 0 6 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 3/40
Esercizio Rasterizzazione 2:correzione prospettica
• Dati gli attributi definiti nei vertici (blu)e le coordinate affini dei vertici (verdi)quanto varra' l'attributo definito per frammento rosso ?
0.5
1
32
1
1
![Page 4: Computer Graphics Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2005/06 prove generali.](https://reader035.fdocument.pub/reader035/viewer/2022062418/5542eb50497959361e8c009b/html5/thumbnails/4.jpg)
M a r c o T a r i n i ‧ C o m p u t e r G r a p h i c s ‧ 2 0 0 5 / 0 6 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 4/40
Geometria proiettiva
• Nella rappresentazione a coordinate omogenee, cosa distingue un punto da un vettore?
la quarta coordinata! Nei vettori vale 0 nei punti 1
![Page 5: Computer Graphics Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2005/06 prove generali.](https://reader035.fdocument.pub/reader035/viewer/2022062418/5542eb50497959361e8c009b/html5/thumbnails/5.jpg)
M a r c o T a r i n i ‧ C o m p u t e r G r a p h i c s ‧ 2 0 0 5 / 0 6 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 5/40
Transform
• Una traslazione è definita da un vettoredi traslazione (tx,ty,tz)
• Come si scrive una matrice di traslazione?
![Page 6: Computer Graphics Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2005/06 prove generali.](https://reader035.fdocument.pub/reader035/viewer/2022062418/5542eb50497959361e8c009b/html5/thumbnails/6.jpg)
M a r c o T a r i n i ‧ C o m p u t e r G r a p h i c s ‧ 2 0 0 5 / 0 6 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 6/40
Transform
• Da cosa e' definita una rotazione generica?
![Page 7: Computer Graphics Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2005/06 prove generali.](https://reader035.fdocument.pub/reader035/viewer/2022062418/5542eb50497959361e8c009b/html5/thumbnails/7.jpg)
M a r c o T a r i n i ‧ C o m p u t e r G r a p h i c s ‧ 2 0 0 5 / 0 6 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 7/40
Shading
• In modalità flat shading,di quante normali abbiamo bisogno per ogni poligono?
![Page 8: Computer Graphics Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2005/06 prove generali.](https://reader035.fdocument.pub/reader035/viewer/2022062418/5542eb50497959361e8c009b/html5/thumbnails/8.jpg)
M a r c o T a r i n i ‧ C o m p u t e r G r a p h i c s ‧ 2 0 0 5 / 0 6 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 8/40
Shading
• Che differenza c'e' fra shading Gouraud e shading Phong?– quale è più caro computazionalmente?– quale dà risultati migliori?– quale è implementato in openGL?
![Page 9: Computer Graphics Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2005/06 prove generali.](https://reader035.fdocument.pub/reader035/viewer/2022062418/5542eb50497959361e8c009b/html5/thumbnails/9.jpg)
M a r c o T a r i n i ‧ C o m p u t e r G r a p h i c s ‧ 2 0 0 5 / 0 6 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 9/40
OpenGL
• In openGL, cosa si ottinene abilitandoGL_NORMALIZE?
• citare un caso in cui serve farlo
• citarne un altro!
![Page 10: Computer Graphics Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2005/06 prove generali.](https://reader035.fdocument.pub/reader035/viewer/2022062418/5542eb50497959361e8c009b/html5/thumbnails/10.jpg)
M a r c o T a r i n i ‧ C o m p u t e r G r a p h i c s ‧ 2 0 0 5 / 0 6 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 10/40
Trasformazione
• quali trasformazioni ti vengono in menteche preservano gli angoli?
• e che NON li preservano?
• cita un motivo del perchè è imporatante
![Page 11: Computer Graphics Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2005/06 prove generali.](https://reader035.fdocument.pub/reader035/viewer/2022062418/5542eb50497959361e8c009b/html5/thumbnails/11.jpg)
M a r c o T a r i n i ‧ C o m p u t e r G r a p h i c s ‧ 2 0 0 5 / 0 6 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 11/40
Trasformazione
• Cose succede se moltiplico un vettore per una matrice di traslazione?
![Page 12: Computer Graphics Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2005/06 prove generali.](https://reader035.fdocument.pub/reader035/viewer/2022062418/5542eb50497959361e8c009b/html5/thumbnails/12.jpg)
M a r c o T a r i n i ‧ C o m p u t e r G r a p h i c s ‧ 2 0 0 5 / 0 6 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 12/40
Texture Mapping
• Quanti accessi alla tessitura vengono interpolati per frammento, se uso il filtro LINEAR ?
![Page 13: Computer Graphics Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2005/06 prove generali.](https://reader035.fdocument.pub/reader035/viewer/2022062418/5542eb50497959361e8c009b/html5/thumbnails/13.jpg)
M a r c o T a r i n i ‧ C o m p u t e r G r a p h i c s ‧ 2 0 0 5 / 0 6 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 13/40
Depth Test
• Cosa serve l'algoritmo di depth-test?
• Cosa devo interpolare per utilizzarlo?
• Che strutture mi servono?
![Page 14: Computer Graphics Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2005/06 prove generali.](https://reader035.fdocument.pub/reader035/viewer/2022062418/5542eb50497959361e8c009b/html5/thumbnails/14.jpg)
M a r c o T a r i n i ‧ C o m p u t e r G r a p h i c s ‧ 2 0 0 5 / 0 6 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 14/40
Struttura Hardware
• Quanti tipi di memoria a bordo delle scheda grafica conosci?
• Per ogni tipo, dire se durante il rendering– vengono letti– vengono scritti– vongono sia letti che scritti– e, in quale fase del pipeline
![Page 15: Computer Graphics Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2005/06 prove generali.](https://reader035.fdocument.pub/reader035/viewer/2022062418/5542eb50497959361e8c009b/html5/thumbnails/15.jpg)
M a r c o T a r i n i ‧ C o m p u t e r G r a p h i c s ‧ 2 0 0 5 / 0 6 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 15/40
Texture Mapping
• Data questa tessitura ad un canale, quanti livelli di mipmapping saranno necessari?
• Calcolarli1 20 2020
4 23 20200 20 7 20
0 0 1217
![Page 16: Computer Graphics Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2005/06 prove generali.](https://reader035.fdocument.pub/reader035/viewer/2022062418/5542eb50497959361e8c009b/html5/thumbnails/16.jpg)
M a r c o T a r i n i ‧ C o m p u t e r G r a p h i c s ‧ 2 0 0 5 / 0 6 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 16/40
Trasformazione
• Cosa succede dopo la seguente catena di comandi OpenGL– glTranslatef(1,1,1);– glRotatef(30,0,1,0);– glTranslatef(-1,-1,-1);
![Page 17: Computer Graphics Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2005/06 prove generali.](https://reader035.fdocument.pub/reader035/viewer/2022062418/5542eb50497959361e8c009b/html5/thumbnails/17.jpg)
M a r c o T a r i n i ‧ C o m p u t e r G r a p h i c s ‧ 2 0 0 5 / 0 6 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 17/40
Sistemi di coordinate
• La matrice di MODEL:– da che sistema di coordinate parte– a che sitema di coordinate arriva– quale e' il suo scopo
![Page 18: Computer Graphics Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2005/06 prove generali.](https://reader035.fdocument.pub/reader035/viewer/2022062418/5542eb50497959361e8c009b/html5/thumbnails/18.jpg)
M a r c o T a r i n i ‧ C o m p u t e r G r a p h i c s ‧ 2 0 0 5 / 0 6 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 18/40
OpenGL
• Quali matrici di trasformazione vengono tenute nello stato di OpenGL?
– perchè si tengono distinte?
![Page 19: Computer Graphics Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2005/06 prove generali.](https://reader035.fdocument.pub/reader035/viewer/2022062418/5542eb50497959361e8c009b/html5/thumbnails/19.jpg)
M a r c o T a r i n i ‧ C o m p u t e r G r a p h i c s ‧ 2 0 0 5 / 0 6 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 19/40
Lighting
• Quale sara' la componente diffuse nel seguente caso:– normale (non normalizzata): ( 1, 1, 0) – posizione luce: (10,20,13)– posizione punto da illuminare: (-22,20,13)– componente ambient del materiale:
(0.5,0.5,0.5)– luce perfettamente bianca
(componente diffuse della luce: ?)
![Page 20: Computer Graphics Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2005/06 prove generali.](https://reader035.fdocument.pub/reader035/viewer/2022062418/5542eb50497959361e8c009b/html5/thumbnails/20.jpg)
M a r c o T a r i n i ‧ C o m p u t e r G r a p h i c s ‧ 2 0 0 5 / 0 6 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 20/40
Lighting
• Cosa è e a cosa serve il fattore di attenuazione della luce?
• Come si calcola?
![Page 21: Computer Graphics Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2005/06 prove generali.](https://reader035.fdocument.pub/reader035/viewer/2022062418/5542eb50497959361e8c009b/html5/thumbnails/21.jpg)
M a r c o T a r i n i ‧ C o m p u t e r G r a p h i c s ‧ 2 0 0 5 / 0 6 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 21/40
Lighting
• Elencare alcuni effetti di illuminazione globale
• Elencare alcuni effetti di illuminazione locale
![Page 22: Computer Graphics Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2005/06 prove generali.](https://reader035.fdocument.pub/reader035/viewer/2022062418/5542eb50497959361e8c009b/html5/thumbnails/22.jpg)
M a r c o T a r i n i ‧ C o m p u t e r G r a p h i c s ‧ 2 0 0 5 / 0 6 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 22/40
Geometrica pura
• Quanto e' il coseno dell'angolo incluso fra questi due vettori?
![Page 23: Computer Graphics Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2005/06 prove generali.](https://reader035.fdocument.pub/reader035/viewer/2022062418/5542eb50497959361e8c009b/html5/thumbnails/23.jpg)
M a r c o T a r i n i ‧ C o m p u t e r G r a p h i c s ‧ 2 0 0 5 / 0 6 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 23/40
Hardware
• Quanti fonti di parallelismo conosciche vengono sfruttati dall'HWper fare rendering?
![Page 24: Computer Graphics Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2005/06 prove generali.](https://reader035.fdocument.pub/reader035/viewer/2022062418/5542eb50497959361e8c009b/html5/thumbnails/24.jpg)
M a r c o T a r i n i ‧ C o m p u t e r G r a p h i c s ‧ 2 0 0 5 / 0 6 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 24/40
Schermo
• Se la mia applicazione riempe uno screen-buffer a risoluzione 640x480, a 50 FpS,quale e' il suo fill-rate ?
• Cosa cambia se aggiungo che la depth complexity è 2.5 ?
![Page 25: Computer Graphics Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2005/06 prove generali.](https://reader035.fdocument.pub/reader035/viewer/2022062418/5542eb50497959361e8c009b/html5/thumbnails/25.jpg)
M a r c o T a r i n i ‧ C o m p u t e r G r a p h i c s ‧ 2 0 0 5 / 0 6 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 25/40
Normali e Aree
• Ho un triangolo definito dai seguenti punti(+1,+1,0)(0,+1,+1)(+2,0,+2)
• Quale e' la sua normale?• Quale e' la sua area?
![Page 26: Computer Graphics Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2005/06 prove generali.](https://reader035.fdocument.pub/reader035/viewer/2022062418/5542eb50497959361e8c009b/html5/thumbnails/26.jpg)
M a r c o T a r i n i ‧ C o m p u t e r G r a p h i c s ‧ 2 0 0 5 / 0 6 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 26/40
Colli di bottiglia
• Quali sono i colli di bottiglia di una applicazioneche faccia uso di rendering interattivo?
• Ti ricordi con che termine si identifica una applicazione che ha tali colli di bottiglia?
![Page 27: Computer Graphics Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2005/06 prove generali.](https://reader035.fdocument.pub/reader035/viewer/2022062418/5542eb50497959361e8c009b/html5/thumbnails/27.jpg)
M a r c o T a r i n i ‧ C o m p u t e r G r a p h i c s ‧ 2 0 0 5 / 0 6 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 27/40
Algoritmo del pittore
• Descrivere cosa fa• Dire che svantaggi comporta
![Page 28: Computer Graphics Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2005/06 prove generali.](https://reader035.fdocument.pub/reader035/viewer/2022062418/5542eb50497959361e8c009b/html5/thumbnails/28.jpg)
M a r c o T a r i n i ‧ C o m p u t e r G r a p h i c s ‧ 2 0 0 5 / 0 6 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 28/40
Culling
• Quanti tipi di culling conosci?
![Page 29: Computer Graphics Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2005/06 prove generali.](https://reader035.fdocument.pub/reader035/viewer/2022062418/5542eb50497959361e8c009b/html5/thumbnails/29.jpg)
M a r c o T a r i n i ‧ C o m p u t e r G r a p h i c s ‧ 2 0 0 5 / 0 6 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 29/40
Back face culling
• Una volta proiettati, due triangoli assumono queste forme:
• ad occhio:– Hanno lo stesso facing (entrabi back-facing o front-
facing)?
• Come si fa a calcolarlo matematicamente?
V0
V1
V2
V1
V2
V0
![Page 30: Computer Graphics Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2005/06 prove generali.](https://reader035.fdocument.pub/reader035/viewer/2022062418/5542eb50497959361e8c009b/html5/thumbnails/30.jpg)
M a r c o T a r i n i ‧ C o m p u t e r G r a p h i c s ‧ 2 0 0 5 / 0 6 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 30/40
Mesh
• Cosa vuol dire che una mesh e' two-manifold?
• Cosa vuol dire che una mesh e' chiusa?
• Cosa vuol dire che una mesh e' orientabile?