Lezione 17: Grafica 3D* -...

Post on 17-Feb-2019

217 views 0 download

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 (m.melotti@cineca.it)

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