Grafica 3D per i beni culturali: 3D e rendering. Lezione 2: 25 Febbraio 2016

Documenti analoghi
Fondamenti di Grafica Tridimensionale

Grafica 3D per i beni culturali: 3D and rendering. Lezione 2: 23 Febbraio 2011

Fondamenti di Grafica Tridimensionale

Computer Graphics. 188 MegaBytes / sec. Riassunto puntata precedente 1/3. Computer Graphics ( CG ): Lezione 2: hardware ergo triangoli

Grafica 3D per i beni culturali: intro. 28 Febbraio 2013

Wrap up. Lezione 19: 19 Maggio 2014

Tecniche di image based relighting Esempi e applicazioni. Lezione 14: 19 Aprile 2011

Grafica 3D per i beni culturali: intro. 17 Febbraio 2014

Grafica 3D per i beni culturali: intro. 22 Febbraio 2016

Introduzione alla Computer Graphics

Caveat. Sintesi di Immagini. Sintesi di Immagini. Rendering: Approccio Fisico

Grafica 3D per i beni culturali: intro. 23 Febbraio 2015

Cenni al rendering di ombre

Cenni al rendering di ombre

Obiettivi. Costruzione di interfacce. Esame. Programma. Strumenti. Concetti di base

Materiali avanzati. Informatica Grafica per le arti. Raytracing. Raytracing. Raytracing. Raytracing. Raytracing

Scuola Politecnica - DICGIM ANNO ACCADEMICO CORSO DI LAUREA MAGISTRALE Ingegneria Informatica INSEGNAMENTO

Introduzione alla modellazione 3d

Rendering Locale. Rendering locale. Rendering locale. Rendering globale. Rendering globale

Computer Graphics. 3D Rendering. Digital representation of 3D objects. Scena 3D rendering image. Geometry of a 3D object. 3D Model

ScuolaSI computer grafica 3d

Introduzione alla GPGPU Corso di sviluppo Nvidia CUDATM. Davide Barbieri

I Modelli 3D più comuni: Mesh poligonali

Texture mapping. Davide Gadia Corso di Programmazione Grafica per il Tempo Reale Laurea Magistrale in Informatica a.a. 2014/2015

IR(3): Illuminazione Globale

Introduzione al Many/Multi-core Computing

Pipeline di rendering. Pipeline di rendering. Outline. Grafica off-line vs Grafica real-time

Normal maps: come si ottengono (2/4)

PTM: Best Practice. Lezione 4: 9 Marzo 2015

Capitolo 8 Rendering Globale. Dal modello locale ai modelli globali. Cap. 8 - Contenuti. Rendering Locale. Sezione 8.1. Limitazioni del modello locale

Corso di Grafica Computazionale

Lezione1. Cos è la computer grafica. Lezione del 10 Marzo Michele Antolini Dipartimento di Ingegneria Meccanica Politecnico di Milano

WebGL. Lezione 18: 15 Maggio 2014

Lezione 11: Solidi, superfici e proiezioni. Le proiezioni. Le proiezioni. Le proiezioni. Le proiezioni. Le proiezioni

Pipeline di rendering

Tecniche di image based relighting Esempi e applicazioni. Lezione 3: 1 Marzo 2012

Effetti avanzati con le texture

Non solo mesh. Height Map. Or: Height Field Or: 2.5 Dataset. Non di sole mesh vive la CG. Curisosità: physical height maps.

Grafica al calcolatore - Computer Graphics

Introduzione alla Grafica 3D

Grafica Real-Time, Hardware Grafico e Linguaggi di Shading. Alessandro Martinelli

Corso Autodesk Maya. consulteklab.com CELL. 349/8/ web: (Effetti speciali 3d per film e animazioni)

Dalla Sfera a Luigi del film Cars L Algoritmo di Ray Tracing

Corso di INFORMATICA GRAFICA. Modulo 2 (CAD) Stefano Cinti Luciani. Altre applicazioni informatiche per la progettazione

Information Visualization

Computer grafica 3D. Indice. Aspetti teorici. Modelli 3D. Computer grafica 3D - Wikipedia

Luci/Ombre. YAFARAY motore di rendering Open Source. Federico Frittelli aka fredfrittella. SUTURA-studio di progettazione.

Novità di 3ds max 5. 3ds max 5.0 MIGLIORAMENTI IN ANIMAZIONE 3ds max 5

Rendering. Visione Artificiale - 11 dicembre Agenda (1 di 2) - Rendering Real-Time e non Real Time. - Ambienti di moodellazione non Real Time

Livello di approfondimento della lezione. Texture mapping di solito spiegato in corsi di CG di base

La modellazione tridimensionale

LEZIONE 2 TEORIA DELLE OMBRE

Le ombre in OpenGl. Daniele Varin LS Ing. Informatica Corso di Elementi di Grafica Digitale

BLENDER LEZIONI DI LABORATORIO

Fotorealismo. Dove si elencano trucchi sagaci ed effetti speciali che servono ad aumentare il fotorealismo nella rasterizzazione.

Image based rendering. Andrea Fusiello

Grafica al calcolatore - Computer Graphics

CORSO DI DISEGNO TECNICO EDILE LEZIONE 2 TEORIA DELLE OMBRE

Corso di Tecniche Avanzate per la Grafica Texturing

Applicazioni 3D avanzate

Cineprese e luci. Informatica Grafica I. Le cineprese. Le cineprese. Le cineprese. Le cineprese. Le cineprese

Modelli 3D: come ottenerli

PointCloud 5.0 Anno 2009

Modellizzazione di dati geografici

Computer Graphics. Visione di insieme: Visione di insieme: Hardware specializzato per il rendering. Lezione 2: hardware ergo triangoli

Grafica al calcolatore - Computer Graphics

Grafica al calcolatore - Computer Graphics

Grafica computazionale Lezione 2

Le problematiche della grafica tridimensionale

Superfici Parametriche

Modelli per i materiali

Rendering ed illuminazione

POV-Ray. Introduzione all uso Proposte didattiche. Corso di perfezionamento

AMBIENTE VIRTUALE UTENTE

SERVER S TAGE / S TUDIO / S TADIUM CATALOGO PRODOTTI

AMBIENTE VIRTUALE. Moduli logici di un Ambiente Virtuale. Modellazione. Management Rendering Interazione. Sintesi. Comportamenti.

Il disegno nel ciclo di vita del prodotto

Cartografia Numerica

Rendering & ray tracing. Implementazione e applicazione pratica

Rappresentazione grafica delle ombre delle figure disegnate

Realtà Virtuale: Applicazioni. Realtà Virtuale: le applicazioni

APPLICAZIONE 3D: VIRTUAL TOUR DAL SITO WEB

Texture maps assets e Mesh assets

STA II ANNO: AA Ecologia e Fondamenti dei. Sistemi. Ecologici Introduzione ai. Sistemi. Informativi Geografici. Lezione del

Ricostruzione stereo. Il nostro obiettivo. Ricostruzione del Cenacolo Vinciano. Ricostruire la profondità. d Y

OPK Suite. Menci Software. Caratteristiche generali. febbraio 2015

Proprietà Base delle Superfici

Acquisizione del colore

Claudio Gussini. Marine Modeling Corso di Modellazione in 3D per la Nautica. Modellazione Avanzata Livello II -

Computer Graphics. Visione di insieme: Visione di insieme: Hardware specializzato per il rendering GRAPHIC HARDWARE

GEOGRAPHICAL INFORMATION SYSTEM PER L ANALISI AMBIENTALE. Nicola Gilio. Dott. Nicola Gilio

Grafica Computazionale

Parte 1/4: Formazione delle immagini

CODIFICA IMMAGINI IN BIANCO E NERO

CAP 5: INTRODUZIONE ALLA GEOMETRIA DESCRITTIVA

Grafica e Geometria Computazionale

Grafica al calcolatore - Computer Graphics

Informatica Grafica. Gianluigi Ciocca, Simone Bianco F1801Q120

1.1 Modello di un Processo di Rendering. Gestore delle Geometrie (Ricostruzione delle Geoemtrie e Clipping)

Transcript:

Grafica 3D per i beni culturali: 3D e rendering Lezione 2: 25 Febbraio 2016 1

Programma del corso (ordine sparso ) 3D graphics intro: 3D vs 2D, modelli di rappresentazione, the rendering pipeline 3D Scanning: intro, theory and practice; sistemi 3D scanning, data processing Assisted modeling from images: theory and practice, photogrammetry basics, image based modeling, tools commerciail, the Sketch-up approach, Sketch-up laboratory 3D reconstruction from images: theory and practice, dense stereo matching, Arc3D ebundler, data processing, Arc3D/Photosynth/Bundler + MeshLab laboratory Relightable images (RTI): Relightable Images, Polynomial Texture Maps, esempi Mesh processing basics: theory and practice, navigazione, pulizia, re-meshing, coloring... MeshLab laboratory Color information in acquisition : theory and practice, cos è il colore, BRDF et similia, image alignment, proiezione colore, texture mapping and color per vertex, MeshLab laboratory WebGL, 3D on the web, 3DHop: publish a 3D model on the web, interaction modalities, enriching the information Case studies, projects and success stories: acquisition, visualization, interaction, etc etc 2

Immagini vs Modelli 3D e' un termine di cui spesso si abusa. Quando si parla di 3D si intende che esiste / si utilizza una rappresentazione inerentemente tridimensionale Esistono tecnologie, basate su immagini, che danno l'impressione di essere all'interno di un'ambiente 3D, ma non sono 3D! Ad es. QuickTimeVR

QuickTime VR I panorami QTVR rappresentano la vista da un singolo punto di tutto l'ambiente circostante Dal punto di vista centrale l'utente puo' guardare (ma senza spostarsi) in ogni direzione e puo' zoomare a piacimento

QuickTime VR Tutto e' rappresentato semplicemente tramite una singola immagine che rappresenta una proiezione cilindrica dello spazio intorno all'utente Guardare in una certa direzione significa guardare una singola porzione di un immagine cilindrica Zoomare significa ingrandire una porzione sempre piu' piccola dell'immagine cilindrica.

QTVR vs. 3D Perche non accontentarsi delle immagini 2D? L'effetto e' gradevole, creazione veloce ed economica! ma non esiste una vera rappresentazione digitale tridimensionale dell'oggetto stesso (della sua forma e spazialita ) Non posso: cambiare posizione di vista, cambiare illuminazione, inserire effetti speciali, ingrandire a piacere, cambiare il contesto, misurare, modificare, fare sezioni ecc. il valore aggiunto della rappresentazione 3D rispetto alle pure immagini e' altissimo. (ma anche il costo di costruzione di modelli 3D e' piu alto)

Modeling/Acquisition e Rendering Modeling/Acquisition creazione di un modello digitale che rappresenti una scena/oggetto di interesse (reale o non) Strumento di conoscenza Rendering tecniche che, a partire da un modello digitale, permettono di produrre delle immagini (statiche o animazioni dinamiche) Turning ideas into pictures Strumento di comunicazione 3D Geometric Models Rendering Image Storage and Display

Modelli 3D?!? Modellare una scena 3D non vuol dire avere solo la rappresentazione geometrica dell oggetto di interesse. Servono molti altri elementi, tra cui: Luci Camere Materiali Animazioni? All interno di questo corso l obiettivo è rappresentare la geometria di oggetti reali, il resto delle problematiche verrà trattato solo in parte.

Modelli 3D?!? La grafica 3D ha a che fare con la visualizzazione di oggetti rappresentati digitalmente Primo obiettivo Rappresentare la superficie degli oggetti!

Idea di base Discretizzare una superficie continua usando delle primitive geometriche Poligoni Triangoli Piccoli elementi curvi (nurbs) Anche punti Ci concentreremo principalmente sui: Triangoli Punti

Cos è una mesh?!? Chiameremo Mesh un struttura poligonale Lavoreremo principalmente su Triangular Meshes

Perché triangular mesh?!? I triangoli sono forme geometriche semplici Il triangolo è sempre planare L Hardware grafico pensa in triangoli La topologia si salva facilmente Vertex Face (Triangle) Edge

Tutto sia composto da triangoli (3D) un quadrilatero? due triangoli! "quad" "diagonal split"

Tutto sia composto da triangoli (3D) un poligono a n lati? (n-2) triangoli! triangolarizzazione di poligono: (non un problema del tutto banale...)

Tutto sia composto da triangoli (3D) la superficie di un solido geometrico, per es. una sfera? triangoli!

Tutto sia composto da triangoli (3D) la superficie di un solido geometrico, per es. un cono? triangoli!

Tutto sia composto da triangoli (3D) un campo d'altezza? (array 2D di altezze, e.g. per modellare un terreno) triangoli!

Tutto sia composto da triangoli (3D) una superficie curva parametrica? triangoli! questo è facile. Il contrario, che qualche volta è utile, MOLTO meno

Tutto sia composto da triangoli (3D) x x y z nuvola di punti? (points cloud) y triangoli! z problema molto studiato e (nel caso generale) difficile

Tutto sia composto da triangoli (3D) triangoli che definiscono una iso-superficie volume? triangoli!

Tutto sia composto da triangoli (3D) triangoli che definiscono la superficie esplicitamente superfici implicite? f(x,y,z)=0 triangoli!

Un limite di questo approccio Non sempre e' semplice modellare le entità da rappresentare con triangoli... esempi: nuvole fuoco pelliccia by Niniane Wang (non real time) by N. Adabala uni florida (non real time) by M. Turitzin and J. Jacobs Stanford Uni (real time!)

Per dirla tutta sulle primitive di rendering Triangoli ok, abbiamo capito Tutto l'hardware è progettato e ottimizzato principalmente per questo caso Quads in un certo senso, perchè diventano triangoli al volo Segmenti Punti

Per dirla tutta sulle primitive di rendering Triangoli ok, abbiamo capito Quads in un certo senso, perchè diventano triangoli al volo Segmenti utile ad esempio per fare rendering di capelli peli etc (ma non è l'unico sistema e non è detto che sia il migliore) Punti nvidia tech demo at SIGGRAPH 2001 nvidia quadro

Per dirla tutta sulle primitive di rendering Triangoli ok, abbiamo capito Quads in un certo senso, perchè diventano triangoli al volo Segmenti utili ad esempio per particle systems Punti

Modeling/Acquisition e Rendering Modeling/Acquisition creazione di un modello digitale che rappresenti una scena/oggetto di interesse (reale o non) Strumento di conoscenza Rendering tecniche che, a partire da un modello digitale, permettono di produrre delle immagini (statiche o animazioni dinamiche) Turning ideas into pictures Strumento di comunicazione 3D Geometric Models Rendering Image Storage and Display

Abbiamo la rappresentazione, vogliamo vederla! Metafora fondamentale Object vs viewer Object (scene): rappresentazione digitale (forma e caratteristiche) di un oggetto reale tridimensionale Viewer: strumento che permette di otternere da un object un immagine Rendering è il processo con cui un viewer genera un immagine a partire da una scene.

La Pipeline di Rendering Def: La serie di passi che trasformano la descrizione geometrica di una scena in un immagine sullo schermo

Insegnare al computer a disegnare Paradigma di Rendering: organizzazione di un processo di disegno in una sequenza di operazioni matematiche Esistono molti Paradigmi di Rendering Rasterization (Transform & Lighting pipeline) Ray Tracing Radiosity Photon mapping Etc... Ogni approccio ha PRO e CONTRO Non sono algoritmi esclusivi, spesso si possono integrare insieme

Rasterization Trasformare la descrizione per vertici 2D del triangolo nell insieme di pixel da accendere 3D Rasterization 2D Qui il triangolo è descritto con 3 punti 2D Qui il triangolo è descritto con un insieme di pixel

x Qualche altro dettaglio... Sottosistema Geometrico y 3D Transform & Lighting 2D Sottosistema Raster Rasterization fragments Il frammento è lo stadio precedente al pixel. Non tutti i frammenti diventeranno per forza pixel Texture Mapping & Shading Z-Buffering Blending Display

Texture mapping, Z-Buffering, Blending Texture mapping: un immagine è associata ad un poligono. Il colore dei frammenti generati dalla rasterizzazione del poligono dipendono dall immagine Z-buffering: più oggetti possono essere proiettati sulle stesse coordinate, ed ognuno genera un frammento. Lo Z- buffering è un algoritmo che determina quale dei frammenti in conflitto diventerà il pixel Blending (blending = mischiare, fondere insieme): capita che il colore del pixel debba essere ottenuto mescolando il colore di più frammenti (relativi alla medesima posizione). Es: materiali semitrasparenti

Caratteristiche L illuminazione è locale alla primitiva (triangolo, punto, linea) renderizzata L illuminazione viene calcolata via via che si disegnano le primitive...niente ombre portate...niente inter-reflection (luce che rimbalza su un oggetto e ne illumina un altro) detto in altro modo: il paradigma di rendering raster-based non codifica il concetto di scena

Quindi? Il paradigma di rendering raster-based non codifica il concetto di scena Ma se volessimo descrivere la scena dovremmo seguire ogni singolo fotone che esce da ogni sorgente di luce, e vedere come interagisce con gli oggetti (che a loro volta saranno descritti da geometria, materiale etc etc) La complessità è così grande da escludere il real time, ma anche la generazione in tempi sensati (per ora). Forse con qualche altro paradigma...

Ray Traced Lighting Soluzione: seguire il percorso della luce al contrario Ombre: Tra il punto di intersezione e la fonte di luce c e un altro oggetto? [facile: spara un altro raggio!] 35

Ray-tracing (Turner Whitted) Rifrazione Riflessione Speculare Ombra 36

Caveat: Riflessione diffusiva Il colore del pavimento si tinge di rosso a causa della parete vicina In realtà TUTTO è una fonte di luce! 37

Ray Tracing: Caratteristiche È un paradigma di rendering globale: tiene conto delle interazioni tra oggetti diversi Modella facilmente le ombre portate Modella bene le riflessioni speculari e rifrattive Può calcolare la riflessione diffusiva ma a costo di tempo elevatissimo

Ray Tracing: Problemi Per ogni pixel (HD: 2 milioni) Calcola l intersezione con ogni oggetto Per calcolare anche le ombre il costo raddoppia Per le inter-reflection piu complicate il costo si moltiplica esponenzialmente Eseguire il rendering di una scena puo occupare da minuti a ore (a giorni)! 39

Altri paradigmi (Illuminazione globale) Radiosity Le superfici sono partizionate in pezzetti (patch) Si pre-calcola quanta parte dell energia che esce da una patch arriva ad ogni altra patch della scena Photon mapping Si simula la luce con uno sciame di fotoni che arte dalle sorgenti e interagisce con le superfici Computazionalmente proibitivo fino a qualche tempo fa

Paradigmi e hardware grafico Le schede grafiche sono pensate per il paradigma Transform&Lighting Oggi la pipeline di rendering è interamente a carico della scheda grafica La CPU si limita a descrivere la scena

Cenni storici sull hardware grafico Riprendiamo lo schema della pipeline di rendering x y 3D Transform & Lighting 2D Rasterization Fino a metà degli anni 90 tutte le parti della pipeline erano eseguite dalla CPU

3D x Cenni storici sull hardware grafico 2007: geometry shader, stesso hardware per tutti gli shaders (NVidia 8800) CPU GPU: Graphical Processing Unit 2D y y x z Transform & Lighting Rasterization Vertex Shader Pixel Shader Memoria Centrale Memoria AGP Geometry Shader bus PCI-E Memoria Video

Cosa portarsi a casa Modeling vs. Rendering Primitive di rendering Paradigmi di rendering Rasterization Ray Tracing Radiosity Photon mapping Le schede grafiche, gli shaders Real time vs accuracy

Next in line Next lesson: 3D Scanning: first part Contacts: Matteo Dellepiane c/o ISTI-CNR Via G. Moruzzi 1 56124 Pisa (PI) Tel. 0503152925 E-Mail: dellepiane@isti.cnr.it Personal website: http://vcg.isti.cnr.it/~dellepiane/ VCG website: http://vcg.isti.cnr.it