La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Computer Graphics Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2004/05 Lezione.

Presentazioni simili


Presentazione sul tema: "Computer Graphics Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2004/05 Lezione."— Transcript della presentazione:

1 Computer Graphics Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2004/05 Lezione 17: dose finale

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 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 Alcuni argomenti che non abbiamo trattato (o abbiamo trattato poco) Modelling: –superfici di suddivisione Paradigmi alternativi di rendering: –raytracing –radiosity Tecniche che usano tessiture: –opacity-maps –bump-maps Altri contesti applicativi: –Rendering non fotorealistico I progressi recenti in HW grafico: –HW programmabile

3 Computer Graphics Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2004/05 Lezione 16: dose finale Modelling: superfici di suddivisione

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 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 Superfici di suddivisione Modo molto diffuso per costruire mesh –1: fare mesh di controllo a bassissima risoluzione a mano –2: raffinarla automaticamente iterativamente (e ad ogni interazione si aggiungono facce e vertici) molti schemi matematici differenti –con diverse peoprietà

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 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 Superfici di suddivisione Esempio: schema butterfly

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 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 Superfici di suddivisione Esempio: schema butterfly

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 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 Superfici di suddivisione

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 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 Superfici di suddivisione Anche iterativamente: 1- Modelling base 2- suddivisione 3- Ritocco 4- Suddivisione...

9 Computer Graphics Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2004/05 Lezione 16: dose finale Altri Paradigmi di Rendering RAY-TRACING

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 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 Ray-Tracing In questo corso abbiamo visto Rendering... – Real Time (o almeno interattivo) – Basato sull'HW – Rasterization based...

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 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 Ray-Tracing Idea: –per ogni pixel sullo schermo: mando un raggio (il "raggio primario" di quel pixel) trovo la sua 1ma intersezione con un oggetto della scena

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 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 Ray-Tracing Implementazione: –tutta basata su intersezione raggio-primitive (che va super-ottimizzata)

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 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 Ray-Tracing Facile fare: ombre portate (nette) raggio primario raggio di shadowing (interseca, quindi il punto e' in ombra)

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 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 Ray-Tracing Facile fare: riflessioni speculari (anche multiple) raggio primario raggio di riflessione

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 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 Ray-Tracing Facile fare: semitrasparenze con rifrazioni raggio primario raggio di riflessione raggio di rifrazione

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 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 Ray-Tracing: tipici esempi di risultati ( Advanced Rendering Toolkit - Alexander Wilkie - 1999)

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 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 Ray-Tracing: tipici esempi di risultati ( Advanced Rendering Toolkit - Alexander Wilkie - 1999)

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 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 Ray-Tracing : tipici esempi di risultati

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 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 Ray-Tracing : costo E' computazionalmente caro –costanti alte –ma in verità SUBLINEARE col numero di primitive se vengono usate strutture dati adeguate In pratica, usato solo per rendering off-line Nota: non usa nessun HW specializzato –ma la CPU normale

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 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 Ray-Tracing: HW apposito Scene: 5 alberi (milionate di triangoli) 28mila girasoli (11 tipi), 35K triangoli ciascuno. OpenRT Project inTrace Realtime Ray Tracing Technologies GmbH MPI Informatik, Saarbrueken - Ingo Wald 2004 HW specializzato per fare RayTracing. Per ora, solo prototipi nei laboratori. Stessa idea base (parallelizzare). Implementazione del tutto differente dal nostro pipeline di rasterizzazione. Sfonderà?

21 Computer Graphics Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2004/05 Lezione 16: dose finale Altri Paradigmi di Rendering Radiosity

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 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 Radiosity Modo per fare illuminazione globale Gestisce bene riflessioni multiple diffuse –ciò che noi avevamo approssimato sommariamente col termine AMBIENT

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 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 Radiosity: Concetto Dividere la scena in pezzetti –circa uguali –(non come i nostri triangoli...)

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 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 Radiosity: Concetto Dividere la scena in pezzetti Per ogni coppia di pezzetti i e j –calcolare quanta luce... che parte da i e si diffonde in tutte le direzioni (DIFFUSE!) –... raggiunge j Alcuni pezzetti emanano luce propria (le luci!) –gli altri diffondono solo quella che gli arriva da fuori Poi risolvere tutto (facile a dirsi) la matriciona corrsipondente e' detta Form Factor

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 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 Radiosity: Come Vecchia scuola: –invertire una matrice enorme Come si fa davvero: –metodi randomizzati stocastici (Monte Carlo)

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 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 Radiosity: Costo E troppo caro da calcolare in tempo reale –e sarà cosi a lungo Ma... il risultato di questa computazione NON dipende dal punto di vista! –può essere salvato nella scena come colore per vertice in una tessitura etc –e renderizzato real time tramite rasterizzazione: almeno finchè cambia solo il punto di vista –(ne' l'illuninazione ne' la scena) togliendo il lighting (almento le componenti AMBIENT e DIFFUSE)

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 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 Radiosity: tipici esempi di risultati

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 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 Torniamo al Rendering basato su Rasterizzazione eseguito su HW grafico specializzato

29 Computer Graphics Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2004/05 Lezione 16: dose finale Opacity Maps

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 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 Texture mapping e Alpha Test In una tessitura, ogni texel può avere anche una componente alpha –Colore + trasparenza Un canale alpha può essere composto di soli –1 completamente opaco –0 completamente trasparente frammenti corrispondenti cassati dall'alpha-test

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 5 / 0 6 U n i v e r s i t à d e l l I n s u b r i a - 31/40 Texture mapping e Alpha Test Trucco molto utile: –es: simboli e testo sulla scena... –es: sistemi di particelle con particelle grandi

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 5 / 0 6 U n i v e r s i t à d e l l I n s u b r i a - 32/40 Texture mapping e Alpha Test Trucco molto utile: –es: erba...

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 5 / 0 6 U n i v e r s i t à d e l l I n s u b r i a - 33/40 Texture mapping e Alpha Test Trucco molto utile: –es: drappi, barba... by Micheal Filipowski 2004 tessitura

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 5 / 0 6 U n i v e r s i t à d e l l I n s u b r i a - 34/40 Texture mapping e Alpha Test Trucco molto utile: –es: alberi

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 5 / 0 6 U n i v e r s i t à d e l l I n s u b r i a - 35/40 Texture mapping e Alpha Test Trucco molto utile: –es: pelliccia tessitura (ripetuta)

36 Computer Graphics Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2004/05 Lezione 16: dose finale Bump-Mapping

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 5 / 0 6 U n i v e r s i t à d e l l I n s u b r i a - 37/40 Bump-Mapping Frammenti & attributi interpolati Vertici & loro attributi Screen buffer Vertici poriettati & attributi computati rasterizer triangoli set- up rasterizer segmenti set- up rasterizer punti set- up computazioni per vertice Texture RAM interpolo coordinate texture coordinate texture interpolate compreso: coordinate texture (per vertice!) bumpmap: ogni texel (la codifica di) una normale texture look-up, lighting (usando la normale) computazioni per frammento

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 5 / 0 6 U n i v e r s i t à d e l l I n s u b r i a - 38/40 Bump-Mapping E' un metodo molto diffuso –per aggiungere dettaglio geometrico in maniera efficace E' un froma di per-fragment lighting –il lighitng è computato per ogni frammento –come ad esempio anche il Phong shading

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 5 / 0 6 U n i v e r s i t à d e l l I n s u b r i a - 39/40 Bump-Mapping stessa geometria (una sfera) bumpmaps diverse

40 Computer Graphics Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2004/05 Lezione 16: dose finale Rendering non fotorealistico

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 5 / 0 6 U n i v e r s i t à d e l l I n s u b r i a - 41/40 Rendering non fotorealistico NPR = Non Photorealistic rendering Un rendering dove l'obiettivo non è il realismo ma: –la chiarezza immagine che da informazione nel modo più chiaro possibile –oppure l'imitazione di uno stile umano: stile toon (cartone animato) stile disegno a matita stile stampa stile chiaroscuro a matita...

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 5 / 0 6 U n i v e r s i t à d e l l I n s u b r i a - 42/40 Rendering non fotorealistico Esempio: rendering in stile disegni a matita

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 5 / 0 6 U n i v e r s i t à d e l l I n s u b r i a - 43/40 Rendering non fotorealistico Esempio: hatching Emil Praun, Hugues Hoppe, Matthew Webb, Adam Finkelstein 2001 modello 3D rendering (in tempo reale)

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 5 / 0 6 U n i v e r s i t à d e l l I n s u b r i a - 44/40 Rendering non fotorealistico Esempio: renderings stile toon Questi sono rederings off-line. Ma esistono algoritmi per il nostro HW grafico per ottenere questo tipo di effetti in tempo reale ! bordi come linee scure shading quantizzato (due gradazioni di verde, invece di una sfumatura continua)

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 5 / 0 6 U n i v e r s i t à d e l l I n s u b r i a - 45/40 Rendering non fotorealistico

46 Computer Graphics Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2004/05 Lezione 16: dose finale Programmabilita della GPU

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 5 / 0 6 U n i v e r s i t à d e l l I n s u b r i a - 47/40 Bump-Mapping Frammenti & attributi interpolati Vertici & loro attributi Screen buffer Vertici poriettati & attributi computati rasterizer triangoli set- up rasterizer segmenti set- up rasterizer punti set- up PROGRAMMABILITA' ! ! ! computazioni per vertice computazioni per frammento


Scaricare ppt "Computer Graphics Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2004/05 Lezione."

Presentazioni simili


Annunci Google