Scaricare la presentazione
La presentazione è in caricamento. Aspetta per favore
PubblicatoCosimo Borghi Modificato 10 anni fa
1
Computer Graphics Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2006/07 Lezione 4: la T in T&L
2
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 2 frammenti (candidati pixels) Riassunto puntate precedenti Vertici (punti in R 3 ) pixel finali (nello screen-buffer) Vertici proiettati (punti in R 2 ) Z rasterizer triangoli computazioni per frammento z y x v0v0 v1v1 v2v2 set- up v0v0 v1v1 v2v2 rasterizer segmenti set- up rasterizer punti set- up computazioni per vertice noi siamo qui
3
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 3 Riassunto puntate precedenti 2/3 z y x v0v0 v1v1 v2v2 v0v0 v1v1 v2v2 object Coordinates screen Coordinates Per ogni vertice: TRANSFORM ?
4
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 4 Riassunto puntate precedenti 3/3 z y x v0v0 v1v1 v2v2 world Coordinates 1 1) transformazione di vista 2) transformazione di proiezione 3) transformazione di viewport 2 y -z v0v0 v1v1 v2v2 view Coordinates (a.k.a. eye Coordinates) y -x -z v0v0 v1v1 v2v2 v0v0 v2v2 v1v1 v0v0 v1v1 v2v2 screen Space 3 Normalized Device Coordinates 1 1 x z y x v0v0 v1v1 v2v2 object Coordinates 0 0) transformazione di modellazione
5
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 5 1) Transformazione di vista La posso fare con una serie di –traslazioni –rotazioni ripassino di geometria...
6
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 6 Spazio affine Spazio dove ci sono tre entità –scalari –vettori –punti attributi: lunghezza, direzione unico attributo: la posizione, rispetto ad un sistema di riferimento
7
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 7 Spazio affine Spazio dove ci sono tre entità –scalari –vettori –punti Operazioni: –Somma e moltiplicazione tra scalari (ovviamente) –Moltiplicazione scalare x vettore vettore –Somma vettore x vettore vettore –Somma punto x vettore punto –Sottrazione punto x punto vettore
8
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 8 Sistema di riferimento ( frame ) Definito da –un punto base (origine) p 0 –e una base vettoriale { v 0, v 1, v 2 } Posso esprimere (univocamente) ogni punto p come: p = v 0 0 + v 1 1 + v 2 2 + p 0 coordinate omogenee di p lin indip cioè: p = v0v0 v1v1 v2v2 p0p0 0 1 2 1
9
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 9 Sistema di riferimento ( frame ) Definito da –un punto base (origine) p 0 –e una base vettoriale { v 0, v 1, v 2 } Posso esprimere (univocamente) ogni vettore v come: v = v 0 0 + v 1 1 + v 2 2 + p 0 coordinate omogenee di p cioè: p = v0v0 v1v1 v2v2 p0p0 0 1 2 0
10
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 10 Rappresentazione di punti e vettori in coordinate omogenee Punti Vettori 1 0
11
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 11 q = (p) v = (u) Trasformazioni Affini Funzioni che prendono un punto (o un vettore) e lo mappano in un altro punto (o vettore) –lavorano in coord omogenee –ci interessano trasformazioni che siano lineari p q
12
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 12 Trasformazioni Affini Preservano –la colinearità tutti i punti inizialmente su una linea giacciono ancora su di una linea dopo la trasformazione e anche –i rapporti tra le distanze il punto di mezzo di un segmento rimane il punto di mezzo di un segmento anche dopo la trasformazione. in generale non preservano: distanze, angoli, aree... se lo fanno, le chiamiamo "rigide"
13
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 13 Trasformazioni Affini Si possono esprimere come moltiplicazione con matrice sempre coordinate omogenee punto di partenza coordinate omogenee punto di arrivo
14
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 14 conta solo questo Trasformazioni Affini Caso vettori sempre coordinate omogenee vettore di partenza coordinate omogenee vettore di arrivo 0...0 0
15
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 15 Esempio: traslazione rigida posso riscriverla come: e cioè: vettore di traslazione
16
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 16 Traslazione rigida l'inversa é ovviamente: matrice di traslazione:
17
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 17 Traslazione rigida cosa succede se la applico ad un vettore ? 0 0
18
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 18 matrice di scaling Scalatura uniforme x y x y
19
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 19 Scalatura non uniforme x y x y matrice di scaling inversa?
20
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 20 Scalatura x y x y nota: la scalatura scala anche la distanza dall'origine
21
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 21 Shearing Lo spostamento e proporzionale alla coord y
22
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 22 Rotazione attorno all'asse z (x,y) x y z partenza: arrivo:
23
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 23 Rotazione attorno all'asse z (x,y) x y z
24
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 24 Rotazione attorno all'asse x, y, o z e le inverse?
25
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 25 Rotazione intorno ad un asse parallelo all'asse z x y z x y z x y traslazione T rotazione R x y traslazione T -1 1 2 3 1. Porto il centro di rot nell'origine 2. Ruoto 3. Rimetto a posto
26
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 26 Rotazione intorno ad un asse parallelo all'asse z x y z x y z f( p ) = T -1 ( R ( T p ) ) x y traslazione T rotazione R x y traslazione T -1 1 2 3
27
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 27 Composizione di trasformazioni Moltiplicazione matrici (vettori) ha la propretà associativa f(p) = T -1 ( R ( T p ) ) = (T -1 R T) p una matrice M 4x4 che fa tutto. considerazioni sull'efficienza cosa possiamo dire sulla forma di M ? cosa succede se moltiplichiamo un vettore per M ?
28
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 28 Punti VS vettori x y z x y z M p M( p ) vM( v ) p = ( *, *, *, 1 ) punto all'angolo della casa (punto) v = ( *, *, *, 0 ) velocità vettoriale del fumo (vettore)
29
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 29 Nessuno si offenda Attenzione all'inversione: (AB) -1 = B -1 A -1 Associativa si, ma commutativa no! AB BA previsione: determinare il corretto ordine delle trasformazioni non sarà intuitivo x y x y RTTR
30
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 30 matrice di cambio di frame Cambio di frame (cambio di sistema di riferimento) Dati due sistemi di riferimento: Esprimo uno in termini dellaltro: p == coordinate di p nel primo sist. di rif.: coordinate di p nel sec. sist. di rif.: v0v0 v1v1 v2v2 p0p0 a0a1a21a0a1a21 u0u0 u1u1 u2u2 q0q0 b0b1b21b0b1b21
31
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 31 matrice di cambio di frame Cambio di frame (cambio di sistema di riferimento) caso particlare: arrivo a sistema di riferimento canonico Dati due sistemi di riferimento: Esprimo uno in termini dellaltro: u1u1 u2u2 u3u3 q p == coordinate di p nel primo sist. di rif.: coordinate di p nel sec. sist. di rif.: 100100 010010 001001 000000 a0a1a21a0a1a21 u0u0 u1u1 u2u2 q0q0 b0b1b21b0b1b21
32
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 32 Cambio di frame In realtà tutte le transf. affini lineari si possono vedere come un cambio di frame –comprese quelle viste: traslazione scaling (uniforme o no) shearing rotazioni
33
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 33 Rotazioni generiche Una rotazione generica é definita da: –angolo, –asse –punto di applicazione come si fa?
34
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 34 Ripasso: prodotto scalare e vettoriale Prodotto Scalare ("dot-product", "internal product") : vettore x vettore scalare commuta lineare 1/2 lineare 2/2 Proprietà
35
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 35 Ripasso: prodotto scalare e vettoriale Prodotto Scalare ("dot-product", "internal product") : vettore x vettore scalare e anche: quindi, per calcolare una distanza tra punti: per il modulo: Proprietà
36
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 36 Ripasso: prodotto scalare e vettoriale Prodotto Scalare ("dot-product", "internal product") : vettore x vettore scalare e ortogonali Proprietà e, se u e v sono normalizzati: quindi se u e v non sono nulli: molto utilmente:
37
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 37 Ripasso: prodotto scalare e vettoriale Prodotto Vettoriale ("cross-product", "external product") : vettore x vettore vettore Proprietà il risultato è ortogonale ad entrambi gli operandi: non commuta: u v uxvuxv
38
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 38 Ripasso: prodotto scalare e vettoriale Prodotto Vettoriale ("cross-product", "external product") : vettore x vettore vettore Proprietà e allineati e, se u e v sono normalizzati: quindi se u e v non sono nulli: molto utilmente:
39
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 39 Input: 1) camera position C pos 2) direzione di vista C dir 3) vettore di alto C up Esercizio: transformazione di vista sistema di riferimento della camera (eye frame) yeye xexe -z e OeOe y x z 0 sistema di riferimento globale (wolrd frame) Output: Matrice di Trasformazione world frame eye frame C up
40
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 40 Transform x y z v0v0 v1v1 v2v2 world Coordinates 1) transformazione di vista 2) transformazione di proiezione 3) transformazione di viewport 2 y -z v0v0 v1v1 v2v2 view Coordinates (a.k.a. eye Coordinates) y x -z v0v0 v1v1 v2v2 v0v0 v2v2 v1v1 v0v0 v1v1 v2v2 screen Space 3 Normalized Device Coordinates 1 1 x x y z v0v0 v1v1 v2v2 object Coordinates 0) transformazione di modellazione 0 1
41
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 41 Esempio in 2D Procedura Disegna_pupazzo_di_neve –Disegna cerchio unitario // corpo –Trasla di (0,2) –Disegna cerchio unitario // testa –(undo trasla) –END 3 1 3 2 1 2
42
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 42 Esempio in 2D Procedura Disegna_pupazzo_di_neve –Disegna cerchio unitario // corpo –Trasla di (0,2) –Disegna cerchio unitario // testa –(undo trasla) –END Main –Scala di (2,2) –Disegna_pupazzo_di_neve: Disegna cerchio unitario Trasla di (0,2) Disegna cerchio unitario (undo trasla) 3 1 3 2 1 2 4 5 6
43
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 43 Scene composite sist coord macchina sist coord ruota
44
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 44 Rendering di scene composite M matrice di modelling usata (da settare prima del rendering di ogni pezzo) T M matr traslazione macchina R M matr rotazione macchina T M R M : va da frame macchina a frame mondo T Ri matr traslazione ruota i T Ri : va da frame ruota a frame macchina!) sist coord mondo (globale) TMTM Come viene l'algoritmo di rendering?
45
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 45 Stack di matrici di modelling! M TMRMTMRM T M R M T R0
46
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 46 Transform x y z v0v0 v1v1 v2v2 world Coordinates 1 1) transformazione di vista 2) transformazione di proiezione 3) transformazione di viewport y -z v0v0 v1v1 v2v2 view Coordinates (a.k.a. eye Coordinates) y x -z v0v0 v1v1 v2v2 v0v0 v2v2 v1v1 v0v0 v1v1 v2v2 screen Space 3 Normalized Device Coordinates 1 1 x x y z v0v0 v1v1 v2v2 object Coordinates 0 0) transformazione di modellazione 2
47
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 47 Trasformazione di proiezione Prima o poi dovremo farlo: da 3D a 2D ! 2 y -z v0v0 v1v1 v2v2 view Coordinates (a.k.a. eye Coordinates) y x -z v0v0 v1v1 v2v2 v0v0 v2v2 v1v1 normalized projected coordinates 1 1 x
48
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 48 Trasformazione di proiezione Vecchio problema: –(in arte, architettura progettazione) come riportare –su un piano (immagine 2D) –oggetti 3D
49
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 49 Trasformazione di proiezione Modo 1: –facile: togliamo una coordinata –ad es. azzeriamo la z –matrice corrisponente:
50
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 50 Trasformazione di proiezione E' una proiezione ortogonale –non c'è prospettiva –simula una situazione in cui: il punto di vista all'infinito con un binocolo mooolto potente –direzioni di vista costanti –Ci manca una scalatura non uniforme (causa aspect ratio del monitor / della finestra!)
51
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 51 Trovare le differenze...
52
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 52 Come si svolge fisicamente il processo: Occhio o macchina fotografica il concetto è lo stesso: lenti CCD o pellicola (2D screen buffer) lenti retina (2D screen buffer) distanza focale
53
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 53 Nostro modello semplificato: pin-hole camera distanza focale -x y -z image plane
54
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 54 Nostro modello semplificato: nota: niente lenti –le lenti servivano a "simulare" una pin-hole camera –non modellandole, ci siamo giocati (per ora) i "difetti" di questa simulazione: range di fuoco finito flares distorsioni radiali
55
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 55 Matematicamente y -z distanza focale d image plane centro di proiezione (origine) x Nota: non è lineare né affine; non è reversibile. non mantiene: rapporto fra distanze colineari (ma mantiene: colinearità)
56
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 56 Ritocchiamo la notazione Esprimo i punti anche con la notazione divisione per 4ta comp anche detta normalizzazione affine
57
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 57 Proiezione prospettica divisione per 4ta comp matrice di trasformazione per la proiezione prospettica: questa operazione si fa per ultima. La 3 e 4 componente (originali) ci saranno utili !
58
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 58 In realtà non si scarta la terza dimensione: ci servirà P y -z v0v0 v1v1 v2v2 view Coordinates (a.k.a. eye Coordinates) x normalizzazione affine y z x coordinate proiettate e normalizzate (affine) [ancora 3D!] Moltiplicazione per la matrice di proiezione La parte visibile casca in [-1,1] x [-1,1] x [-1,1] quindi dette anche "Normalized Device Coordinates"
59
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 59 Proiezione prospettica: che effetto fa
60
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 60 Proiezione Prospettica: che effetto fa d infinito (diventa una proiezione ortogonale) d piccolod grande Più distorsione prospettica. Effetto "fish-eye" (grandangolo) Proporzioni più mantenute Effetto "zoom" (eg. vista dal satellite)
61
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 61 Curiosità effetto Vertigo –detto anche "contra-zoom" o "track & zoom"
62
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 62 Considerazione traslazione rotazione scalatura uniforme scalatura non uniforme shearing proiezione ortigonale trasf. affine generica proiezione prospettica con rinormalizzazione lunghezze rapporti lunghezze su una linea angoli colineariltà VVXXXXXXVVXXXXXX VVVXXXXXVVVXXXXX VVVVVVVXVVVVVVVX VVVVVVVVVVVVVVVV
63
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 63 Considerazione x y z v0v0 v1v1 v2v2 world Coordinates y -z v0v0 v1v1 v2v2 view Coordinates (a.k.a. eye Coordinates) y x -z v0v0 v1v1 v2v2 v0v0 v2v2 v1v1 v0v0 v1v1 v2v2 screen Space Normalized Device Coordinates 1 1 x x y z v0v0 v1v1 v2v2 object Coordinates modellazione vista proiezione viewport Modellazione + Vista: di solito - scalature uniformi - traslazioni - rotazioni che mantengono gli angoli Proiezione: non mantiene gli angoli teniamo una sola matrice per entrambe (la matrice "Modellazione-Vista") teniamo questa matrice separata (la matrice "Proiezione")
64
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 6 / 0 7 U n i v e r s i t à d e l l I n s u b r i a - 64 Stack di matrici di MODEL-VIEW M V T M R M V T M R M T R0 V teniamo una sola matrice per entrambe (la matrice "Modellazione-Vista") da mondo a vista
Presentazioni simili
© 2024 SlidePlayer.it Inc.
All rights reserved.