Lezione 17: Grafica 3D* -...
Transcript of Lezione 17: Grafica 3D* -...
Lezione 3: Grafica 3D*
Informatica Multimediale
Docente:
Umberto Castellani
*I lucidi sono tratti da una lezione di Maura
Melotti ([email protected])
Sommario
Il processo grafico
La modellazione 3D
Rendering
Image storage and display
Introduzione: il processo grafico
3D
Modelling
3D
Animation
Definition
Image
Storage and
Display
Texture
Information
Rendering
Image storage and display
Hardware
Framebuffer
Disk
File
Film
Recorder
Video
Recorder
Rendering
Modelling e rendering
3D
Modelling
3D
Animation
Definition
Image
Storage and
Display
Texture
Information
Rendering
MODELLING
Modellazione 3D
La modellazione 3D: è il processo di descrizione di un oggetto o una scena al fine di poterla disegnare
– Struttura:
Definizione geometrica
Trasformazioni 3D
– Apparenza:
Definizione telecamere virtuali
Definizione sorgenti di luce
Definizione proprietà dei materiali
Struttura e apparenza
La struttura viene descritta principalmente dalla geometria degli oggetti e dalla loro posizione reciproca (posizionamento nello spazio 3D).
L‟apparenza descrive come la
superficie del modello interagisce
con la luce (colore, riflessi e
trasparenze)
Geometria
La geometria degli oggetti viene definita dalle seguenti primitive grafiche (i.e., i mattoni che costituiscono l‟oggetto):
– Punti
– Linee
– Poligoni (i.e., triangoli)
Usando primitive multiple si generano oggetti complicati, ovvero le scene complesse sono composte da moltissimi blocchi di primitive
E‟ importante il livello di dettaglio (LOD)
12 poligoni
72000 triangoli
Geometria: punti
Point primitives
Geometria: linee
Definite come liste di punti – “polyline” o “ line strip
Geometria: poligoni
Es: Triangoli
• sono sempre convessi
• è il più semplice tipo di poligono
• è planare
Many graphics systems have
separate primitives for triangles
that are more efficient than the
general polygon primitives.
Geometria: poligoni
Most graphics systems know how to draw
only very simple convex polygons, usually
triangles.
Geometria: poligoni
Triangle Strip
Quad mesh
Geometria: tipi di modelli
E‟ possibile generare le primitive geometriche specificando differenti tipi di modelli:
– Superfici esplicite
– Superfici implicite
– Constructiove Solide Geometry (CSG)
– Altri più avanzati..(i.e., superfici di
suddivisione, modelli deformabili, modelli
autogenerativi, ect.)
Generalmente si modella solo la parte visibile
degli oggetti (i.e., le superfici) – in altre
applicazioni è utile modellare anche gli interni (es:
in ambito medico)
Superfici esplicite
Le superfici esplicite descrivono direttamente le primitive geometriche
– Poligoni o mesh: la
superficie viene
– Superfici parametriche
Mesh poligonali
la superficie viene scomposta in un insieme di poligoni, solitamente triangoli ottenendo una tessellazione
Servono molti triangoli per definire oggetti con una geometria complicata e dunque la memoriapotrebbe esplodere (o il loro processamento)
E‟ importante definire il livello di tessellazione
Superfici parametriche
Ci sono diverse funzioni matematiche che descrivono particolari superfici curve
Si usano piccole regioni o patches
Come nella tessellazione pologonale si effettua una tessellazione di patch di curve
Sono definite da punti di controllo
Esempi: bezier, Hermite, B-spline, Nurbs, ectc.
Superfici implicite
Una superficie implicita è descritta da una funzione matematica
– Es. sfere, cilindri, coni, etc.
– Metaballs
– Isosuperfici
Constructive Solid Geometry (CSG)
Sono ottenute combinando simplici solidi 3D usando le operazioni booleani (and, or, not)
Livello di dettaglio
Le superfici più complesse hanno bisogno di più triangoli per essere rappresentate
Maggiore è il numero di triangoli e
migliore è la capacità del modello di
rappresentare i dettagli
– Livello di dettaglio (level of detail)
Livello di dettagli: compromesso
• modellazione più laboriosa
• rendering più lento
• occupa più memoria
Più dettaglio
Più realismo
Modelling: trasformazioni
Trasformazioni:
•rotazione
•scale
•traslazione
Trasformazioni: calcolo
x' = Ax + By + Cz + D
y' = Ex + Fy + Gz + H
z' = Ix + Jy + Kz + L
Equazioni lineari in forma matriciale
Rotazioni
Rotation
Rotazione su asse Z
3D Rotation About Z
Rotazione su asse Y
3D Rotation About Y
Rotazione su asse X
3D Rotation About X
Scala
Scalingx' = x * Sx
y' = y * Sy
z' = z * Sz
Scala
Scaling
Traslazioni
x' = x + Dx
y' = y + Dy
z' = z + Dz
Translation
Translation
Traslazioni
Translation
Apparenza: telecamere virtuali
Telecamera
Nel passare dal 3D al 2D c‟è perdita di informazione
Occorre definire:
– Da dove si osserva (view point)
– Su cosa si osserva (look at point)
– Orientazione della telecamera (view
direction)
– Regole di proiezione:
ortografica
Proiettiva
clipping
Telecamera: proiezioni
Ortografica: gli oggetti vengono mappati sul piano immagine senza variariazione di dimensione
Proiettiva: si emula la fisica del sistema proiettivo (gli oggetti lontani sono più piccoli)
– È importante definire i parametri di proiezione come la focale (zoom)
Proiezione: frustrum e clipping
Nel definire la telecamera si deve specificare il „cono‟ di vista (i.e., frustrum)
– Si determina dal
parallelepipedo tra il
piano più vicino e il
piano più lontano
Gli elementi della scena
che non cadono dentro al
frustrum non vengono
proiettati (fase di clipping)
Apparenza: illuminazione
L‟essere umano è molto sensibile alla luminosità
Dalla variazione della luminosità
si percepisce la forma 3D di un
oggetto
La modellazione delle luci della
scena si occupa del loro
posizionamento e del tipo
Tipi di illuminazione
Directional Light: is specified with only a direction and an intensity which apply everywhere in the scene (sunlight).
Point Light: all light comes from one point.
Spotlight: it has a shade around it so that it shines only in a cone.
Ambient Light: it models the light that is scattered about by bouncing off other objects.
Apparenza: proprietà dei materiali
Nel modellare un oggetto è importante definire le proprietà del materiale che lo compone
Tali proprietà condizionano l‟apparenza dell‟oggetto
nel momento in cui viene colpito dalla luce
Le proprietà principali sono:
– Colore
– Riflettanza
– rugosità demo
Interazione luce-superfici
Riflessione da superfici
a) speculare b) diffusiva c) trasparente
Sorgenti di Luce
sorgente estesa (lampadina):
Funzione di illuminazione I(x,y,z, u, f, l)
il contributo totale sulla superficie
si ottiene integrando nello spazio
Software di modellazione 3D
AutoCAD : http://www3.autodesk.com
Maya : http://www.aliaswavefront.com
Multigen : http://www.paradigms.com
3DStudio : http://www2.discreet.com