Sistemi Multimediali II
prove generali di compitino
Università dell’Insubria
Facoltà di Scienze MFN di Varese
Corso di Laurea in Informatica
Anno Accademico 2004/05
Marco Tarini
Esercizio Rasterizzazione
• Dati gli attributi definiti nei vertici (blu)
quanto varra' l'attributo definito per frammento rosso ?
3
0.5
1
M a r c o T a r i n i ‧ S i s t e m i M u l t i m e d i a l i I I ‧ 2 0 0 4 / 0 5 ‧ 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 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 ?
2 3
1
0.5
1 1
M a r c o T a r i n i ‧ S i s t e m i M u l t i m e d i a l i I I ‧ 2 0 0 4 / 0 5 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 3/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
M a r c o T a r i n i ‧ S i s t e m i M u l t i m e d i a l i I I ‧ 2 0 0 4 / 0 5 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 4/40
Transform
• Una traslazione è definita da un vettore
di traslazione (tx,ty,tz)
• Come si scrive una matrice di traslazione?
M a r c o T a r i n i ‧ S i s t e m i M u l t i m e d i a l i I I ‧ 2 0 0 4 / 0 5 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 5/40
Transform
• Da cosa e' definita una rotazione generica?
M a r c o T a r i n i ‧ S i s t e m i M u l t i m e d i a l i I I ‧ 2 0 0 4 / 0 5 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 6/40
Shading
• In modalità flat shading,
di quante normali abbiamo bisogno per ogni
poligono?
M a r c o T a r i n i ‧ S i s t e m i M u l t i m e d i a l i I I ‧ 2 0 0 4 / 0 5 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 7/40
Shading
• Che differenza c'e' fra shading Gouraud e
shading Phong?
– quale è più caro computazionalmente?
– quale dà risultati migliori?
– quale è implementato in openGL?
M a r c o T a r i n i ‧ S i s t e m i M u l t i m e d i a l i I I ‧ 2 0 0 4 / 0 5 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 8/40
OpenGL
• In openGL, cosa si ottinene abilitando
GL_NORMALIZE?
• citare un caso in cui serve farlo
• citarne un altro!
M a r c o T a r i n i ‧ S i s t e m i M u l t i m e d i a l i I I ‧ 2 0 0 4 / 0 5 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 9/40
Trasformazione
• quali trasformazioni ti vengono in mente
che preservano gli angoli?
• e che NON li preservano?
• cita un motivo del perchè è imporatante
M a r c o T a r i n i ‧ S i s t e m i M u l t i m e d i a l i I I ‧ 2 0 0 4 / 0 5 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 10/40
Trasformazione
• Cose succede se moltiplico un vettore per una
matrice di traslazione?
M a r c o T a r i n i ‧ S i s t e m i M u l t i m e d i a l i I I ‧ 2 0 0 4 / 0 5 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 11/40
Texture Mapping
• Quanti accessi alla tessitura vengono interpolati
per frammento, se uso il filtro LINEAR ?
M a r c o T a r i n i ‧ S i s t e m i M u l t i m e d i a l i I I ‧ 2 0 0 4 / 0 5 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 12/40
Depth Test
• Cosa serve l'algoritmo di depth-test?
• Cosa devo interpolare per utilizzarlo?
• Che strutture mi servono?
M a r c o T a r i n i ‧ S i s t e m i M u l t i m e d i a l i I I ‧ 2 0 0 4 / 0 5 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 13/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
M a r c o T a r i n i ‧ S i s t e m i M u l t i m e d i a l i I I ‧ 2 0 0 4 / 0 5 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 14/40
Texture Mapping
• Data questa tessitura ad un canale, quanti livelli
di mipmapping saranno necessari?
• Calcolarli
1 20 20 20
4 23 20 20
0 20 7 20
0
0 12 17
M a r c o T a r i n i ‧ S i s t e m i M u l t i m e d i a l i I I ‧ 2 0 0 4 / 0 5 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 15/40
Trasformazione
• Cosa succede dopo la seguente
catena di comandi OpenGL
– glTranslatef(1,1,1);
– glRotatef(30,0,1,0);
– glTranslatef(-1,-1,-1);
M a r c o T a r i n i ‧ S i s t e m i M u l t i m e d i a l i I I ‧ 2 0 0 4 / 0 5 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 16/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
M a r c o T a r i n i ‧ S i s t e m i M u l t i m e d i a l i I I ‧ 2 0 0 4 / 0 5 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 17/40
OpenGL
• Quali matrici di trasformazione vengono tenute
nello stato di OpenGL?
– perchè si tengono distinte?
M a r c o T a r i n i ‧ S i s t e m i M u l t i m e d i a l i I I ‧ 2 0 0 4 / 0 5 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 18/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: ?)
M a r c o T a r i n i ‧ S i s t e m i M u l t i m e d i a l i I I ‧ 2 0 0 4 / 0 5 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 19/40
Lighting
• Cosa è e a cosa serve
il fattore di attenuazione della luce?
• Come si calcola?
M a r c o T a r i n i ‧ S i s t e m i M u l t i m e d i a l i I I ‧ 2 0 0 4 / 0 5 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 20/40
Lighting
• Elencare alcuni effetti di illuminazione globale
• Elencare alcuni effetti di illuminazione locale
M a r c o T a r i n i ‧ S i s t e m i M u l t i m e d i a l i I I ‧ 2 0 0 4 / 0 5 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 21/40
Geometrica pura
• Quanto e' il coseno dell'angolo incluso fra
questi due vettori?
M a r c o T a r i n i ‧ S i s t e m i M u l t i m e d i a l i I I ‧ 2 0 0 4 / 0 5 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 22/40
Hardware
• Quanti fonti di parallelismo conosci
che vengono sfruttati dall'HW
per fare rendering?
M a r c o T a r i n i ‧ S i s t e m i M u l t i m e d i a l i I I ‧ 2 0 0 4 / 0 5 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 23/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 ?
M a r c o T a r i n i ‧ S i s t e m i M u l t i m e d i a l i I I ‧ 2 0 0 4 / 0 5 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 24/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?
M a r c o T a r i n i ‧ S i s t e m i M u l t i m e d i a l i I I ‧ 2 0 0 4 / 0 5 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 25/40
Colli di bottiglia
• Quali sono i colli di bottiglia di una applicazione
che faccia uso di rendering interattivo?
• Ti ricordi con che termine si identifica una
applicazione che ha tali colli di bottiglia?
M a r c o T a r i n i ‧ S i s t e m i M u l t i m e d i a l i I I ‧ 2 0 0 4 / 0 5 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 26/40
Algoritmo del pittore
• Descrivere cosa fa
• Dire che svantaggi comporta
M a r c o T a r i n i ‧ S i s t e m i M u l t i m e d i a l i I I ‧ 2 0 0 4 / 0 5 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 27/40
Culling
• Quanti tipi di culling conosci?
M a r c o T a r i n i ‧ S i s t e m i M u l t i m e d i a l i I I ‧ 2 0 0 4 / 0 5 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 28/40
Back face culling
• Una volta proiettati, due triangoli assumono queste
forme:
V1
V2
V2
V0
V0
V1
• ad occhio:
– Hanno lo stesso facing (entrabi back-facing o front-facing)?
• Come si fa a calcolarlo matematicamente?
M a r c o T a r i n i ‧ S i s t e m i M u l t i m e d i a l i I I ‧ 2 0 0 4 / 0 5 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 29/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?
M a r c o T a r i n i ‧ S i s t e m i M u l t i m e d i a l i I I ‧ 2 0 0 4 / 0 5 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 30/40
M a r c o T a r i n i ‧ S i s t e m i M u l t i m e d i a l i I I ‧ 2 0 0 4 / 0 5 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a - 31/40
Scarica

ppt