Grafica Computazionale
• docente: Marco Tarini
e-mail: [email protected]
• ricevimento:
merc ore 14:30, e dopo ogni lezione, e su appuntamento
• pagina del corso:
1. google for: “Marco Tarini”
2. il primo link sono io 3. tab “teaching” (in basso!) 4. “Computer Graphics 12/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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a 1
Strumenti necessari
• Un po' di matematica
– Algebra lineare: calcolo matriciale
• (matrici 3x3 o 4x4)
• Un po' di algoritmica
– Es. saper valutare la complessità asintotica
• Un po' di voglia
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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a 2
Grafica Computazionale
Marco Tarini Università dell’Insubria
Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2012/13
Lezione I: intro e applicazioni
3
Una definizione
Grafica Computazionale
en: Computer Graphics (CG)
la disciplina che studia
come modellare e visualizzare informazioni su un dispositivo di output video
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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a 4
Computer Graphics: 3D
• In termini generali:
1. Modellazione di entità (tipicamente) tridimensionali 2. Sintesi di immagini a partire da queste
• Campo molto vasto
– questo è solo un corso introduttivo – copriremo solo una piccola parte
• Campo in rapido progresso – da una trentina d'anni!
– ha subito alcune importanti rivoluzioni di paradigma – questo corso dà un'infarinata dello stato attuale
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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a 5
Computer Graphics: vicini di casa
Algoritmi e strutture dati
(e cosa mai ne può prescidere?)
Architetture HW
perché CG ruota intorno all’HW specializzato
Geometria Computazionale (“computational geometry”) algoritmi per problemi con immediata interpretaz “geometrica”
Computer Vision
in un certo senso, il problema inverso della CG
Image Processing
sulla sponda 2D
Parallel Computing
in stretto rapporto con gli algoritmi di rendering
Interactive techniques (HCI - interfaccia uomo macchina)
GUI: Graphics User Interfaces
Scientific Visualization (and Data Visualization) usa la CG come strumento base
UTILIZZATEDALLACGLIMITROFEALLACGUTILIZZANOLACG
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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a 6
CG: gli strumenti tecnologici
• Interfacce – di input:
• tastiera, mouse
• gloves, trackballs, gamepads,
• tracked devices (es vedi nintendo Wii)
• … – di output:
• monitor, proiettore
• sistemi di proiettori multipli
• 3D video sistems
• ...
– di input + ouput:
• haptic interfaces
• caschetto VR
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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a 7
Computer Graphics: applicazioni
• Cultural heritage – musei virtuali – supporto al restauro – supporto all’analisi – monitoring
• Medicina
– supporto alla diagnosi – telechirurgia – simulazioni
• Architetturali – Supporto al design – Previews
• …
• Videogiochi
• Cinematografia – Visual effects – Film di animazione
• Scientific Visualization
• Manufacturing industry – e.g. Computer Aided Design
• Telecommunications – Personalized Avatars – E–commerce
• Virtual Reality – e augmented reality
Computer Graphics: applicazioni
• Visualizzazione Scientifica – aka: SciVis , visual data analysis ...
(TACC Scientific Visualization group)
(Pittsburg Supercomputing center) (NASA)
• Visualizzazione di dati scientifici
• fenomeni meteorologicici, medici, biologici, chimici, fisici, astrofisici, etc etc
• Origine dei dati:
• l’output di una simulazione
• acquisiti con qualche sistema di misura
Tipicamente: grandi quantità di dati
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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a 9
Visualizzazione Scientifica
Onde gravitazionali durante una collisione di buchi neri
(Max Planck Insitute for Gravitational Physics) Rhinovirus 3 protein
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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a 10
Visualizzazione Scientifica
• Visualizzazione Scientifica – aka: SciVis ,
visual data analysis ...
(superficie di un vetro -- Nanorobotics Lab (Carnegie Mellon University )
(Pittsburg Supercomputing center) (NASA)
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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a 11
Visualizzazione Scientifica
• Visualizzazione Scientifica – aka: SciVis , visual data analysis ...
(Pittsburg Supercomputing center)
(NASA) 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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a
parentesi parentesi parentesi parentesi parentesi
parentesi parentesi parentesi parentesi parentesi VS
• dati astratti (N dimensionali)
• Scopo:
chiarezza/leggibilità
• Mezzi:
i più vari
13
Scientific Visualization
• dati con un interpretazione 3D “naturale”
– spesso:
+ dimensione tempo
• Scopo:
chiarezza/leggibilità
• Mezzi:
realismo, oppure …
Data Visualization
parentesi parentesi parentesi parentesi parentesi
parentesi parentesi parentesi parentesi parentesi VS
14
Scientific Visualization Data Visualization
Simulaz.
relazione fra due fluidi di densità diverse
Computer Graphics: applicazioni
• Cultural heritage – musei virtuali – supporto al restauro – supporto all’analisi – monitoring
• Medicina
– supporto alla diagnosi – telechirurgia – simulazioni
• Architetturali – Supporto al design – Previews
• …
• Videogiochi
• Cinematografia – Visual effects – Film di animazione
• Scientific Visualization
• Manufacturing industry – e.g. Computer Aided Design
• Telecommunications – Personalized Avatars – E–commerce
• Virtual Reality – e augmented reality
Computer Graphics: applicazioni
• applicazioni medicali – supporto alla diagnosi
• e.g. visualizz. CAT scans – chirurgia virtuale – tele-chirurgia
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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a 17
Computer Graphics: applicazioni
• Industria Manifatturiera – CAD
– Rapid Prototyping – Simulazioni
di funzionamento – Defect detection – …
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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a 18
Computer Graphics: applicazioni
• Entertainment: movie industry – visual effects (non special fx)
Jurassic Park - Universal Studios 1993M 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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a Star Wars: The Phantom Manace - Lucasart 1999 19
parentesi parentesi parentesi parentesi parentesi
parentesi parentesi parentesi parentesi parentesi
Effetti Visuali VS Effetti Speciali
• (in post-produzione) (sul set)
(es: stuntmen, corde, esplosioni, …)
20
Computer Graphics: applicazioni
• Entertainment: movie industry – CG shorts
Luxo Jr - Pixar 1986 Geri's Game - Pixar 1997
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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a 21
Computer Graphics: applicazioni
• Entertainment: movie industry – CG shorts
– Feature movies
Toy Story - Pixar 1995Geri's Game - Pixar 1997
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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a 22
Computer Graphics: applicazioni
• Entertainment:
movie industry – Feature movies
fotorealistici
Final Fantasy – Squaresoft 2001
Final Flight Of the Osiris – Squaresoft 2003M 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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a Avatar – ILM 200923
parentesi parentesi parentesi parentesi parentesi
parentesi parentesi parentesi parentesi parentesi
Uncanny valley
24
Computer Graphics: applicazioni
• Entertainment: giochi
– forza trainante del settore (crederci o no) ...
Battlezone – Atari 1980M 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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a Tailgunner - Cinematronics 197925
Computer Graphics: applicazioni
• Entertainment: giochi
– forza trainante del settore (crederci o no) ...
Doom – IDsoft 1993
Virtua Fighter - Sega 1993 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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a
Computer Graphics: applicazioni
• Entertainment: giochi
– forza trainante del settore (crederci o no) ...
Doom 3- ID soft 2004
World of Warcraft,
Blizzard Entertainment 2004 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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a
Computer Graphics: applicazioni
• Entertainment: giochi
World of Warcraft, Blizzard Entertainment 2004
variM 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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a 28
Computer Graphics: applicazioni
• Beni Culturali – Presentazione
• musei virtuali
• cataloghi di musei reali
• supporto alla didattica
• documentaristica...
– Supporto al restauro
• Modello 3D come GIS
• Simulazioni...
– Studio
• Analisi dei dati
• vedi SciVis
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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a 29
Beni Culturali
• Uso:
– fruizione (musei virtuali..) – documentaristica – didattica – monitoraggio
• Mezzi:
– acquisizione della forma ( 3DScanning ) – acquisizione del colore
– Tecniche di visualizzazione di grandi moli di dati (multiresolution, out of core rendering)
Visual Computing Lab – ISTI-CNR Pisa
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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a 30
Beni Culturali: Fruizione
• Chioschi: supporti multimediali ai musei tradizionali
– PC + video, l’utente esamina le opere, legge note informative – esempi: il Davide di Michelangelo alla Galleria dell’Accademia di Firenze – esempi: Il monumento funebre di Arrigo VII all’Arcivescovado• Diffusione via rete
– L’utente visita un museo (o una singola opera) dal PC di casa
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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a 31
Beni Culturali: Fruizione
• Beni Culturali
– musei virtuali
– supporto multimediale musei tradizionali
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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a 32
Computer Graphics: applicazioni
• Beni Culturali
– presentazione in rete
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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a 33
Beni Culturali: Restauro
• Il restauratore si faceva fare degli schizzi su carta dell’opera da restaurare per fare una mappa degli interventi: col il modello virtuale può gestire tutto su PC
• Acquisizione dell’opera prima e dopo il restauro e confronto geometrico delle differenze
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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a 34
Computer Graphics: applicazioni
• Beni Culturali
– modello 3D come "GIS"
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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a 35
Beni Culturali: Studio
• ES: Simulazione caduta contaminanti
15 degrees 5 degrees
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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a 36
Beni Culturali: Monitoraggio
• es: monitorare nel tempo la variazioni sui materiali deformabili
foresta di Dunarobba
http://www.forestafossile.it/public/new/
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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a 37
Beni Culturali: i mezzi
oggetto reale Rappresentazione digitale
Strumento di acquisizione
processing dei dati
• Acquisizione della forma geometrica (3D scanning)
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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a 38
Beni Culturali: i mezzi
• Acquisizione della forma geometrica
(es: 3D scanning)
Visual Computing Lab – Stanford Uni 2000
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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a 39
Beni Culturali: i mezzi
• Acquisizione del colore – semplici fotografie
• approssimato, dipende dalla luce
– Tecniche di calcolo della BRDF
Ci torniamo sopra con calma
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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a 40
Computer Graphics: applicazioni
• Cultural heritage – musei virtuali – supporto al restauro – supporto all’analisi – monitoring
• Medicina
– supporto alla diagnosi – telechirurgia – simulazioni
• Architetturali – Supporto al design – Previews
• …
• Videogiochi
• Cinematografia – Visual effects – Film di animazione
• Scientific Visualization
• Manufacturing industry – e.g. Computer Aided Design
• Telecommunications – Personalized Avatars – E–commerce
• Virtual Reality – e augmented reality
Computer Graphics: applicazioni
• Architettura:
– supporto al design
ArchiCAD (Graphsoft)
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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a 42
Computer Graphics: applicazioni
• Architettura:
– preview:
• comunicazione
• assessment
Brazil – SputterFish 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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a
Summary
• Grafica Computazionale (Computer Graphics - CG ):
– molteplici applicazioni
– medicali – industriali – beni culturali – militari – telecomunicazioni – commerciali
– ricerca scientifica (scivis) – intrattenimento: games – intrattenimento: movies – e altro (realta' virtuale....)
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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a 44
Computer Graphics interattiva: schema ricorrente
applicazione interattiva informazione modellazione
rappresentazione adeguata
(per...)
Immagine/i
rendering /visualizzazione
preprocessing modelling
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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a 45
esempio: acquisizione 3D per beni culturali
chiosco museale Statua reale Range scanning
(scansione laser) Mesh poligonale 3D
Immagine/i
rendering
Semplificazione, flitering…
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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a 46
esempio: games
videogame Artista
(conent creator) modellazione manuale
(e.g. 3Dstudio max, Maya, Blender…)Mesh low-poly + textures
Immagine/i
rendering /visualizzazione
semplificazione, u-v mapping, rigging…
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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a 47
esempio: sci-vis analisi di un terremoto
applicaz interattiva Modello
matematico
del terremoto Simulazione fisica
Campo di altezza (time-varying)
Immagine/i
rendering /visualizzazione
processing vari…
(es color-coding)
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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a 48
Rendering
• Parola utilizzata in molti contesti
Modello rendering Immagine
descritto da un insieme di primitive
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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a 49
Rendering
• Esempio: nei web browser
la pagina come un’immagine
rendering
...
testo in HTML
(+ immagini, ccs, etc)modello della pagina WEB
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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a 50
Rendering
• Rendering 3D
Scena 3D rendering Immagine
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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a 51
Rendering
• Rendering 3D
Immagine Scena 3D rendering
...
modello 3D
• punti 3D
• primitive...
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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a 52
Algoritmi di Rendering
• Due tipi:
– On-Line Rendering
• Interattivo: circa 1 – 10 frames per sec ("fps")
• Real-Time: circa 10-100 fps – Off-line Rendering
• Tipicamente: da minuti ad ore per fotogramma
• Molto differenti:
– nelle applicazioni – nei vincoli
– nella qualità visiva raggiunta (e.g. fotorealismo) – negli algoritmi e SD usate
insomma: approcci diversi, mondi diversi.
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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a 53
Real Time VS Offline rendering
• Distanza si accorcia
Jurassic Park - Universal Studios 1993
real time
1993
Virtua Fighter - Sega 1993
Jurassic Park - Universal Studios 1993
offline
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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a 54
Real Time VS Offline rendering
• Distanza si accorcia
Jurassic Park - Universal Studios 1993
Final Fintasy – Squaresoft 2001 nVIDIA tech demo at SIGGRAPH 2001
nVIDIA quadro
2001
real time offline
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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a 55
Real Time VS Offline rendering
• Distanza si accorcia
Jurassic Park - Universal Studios 1993
2007
GPUGems III, d'Eon & Luebke (NVidia), 2007
real time offline
Spiederman 3– Squaresoft 2007
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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a 56
Rendering
• Rendering 3D
Scena 3D rendering Immagine
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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a 57
Immagine: su che display hardware ?
• Su un monitor, naturalmente!
• Il tubo catodico: un fascio di elettroni viene diretto su una superficie coperta di materiale fosforescente
– Display vettoriali:
il fascio veniva pilotato direttamente in maniera totalmente libera
– Display CRT:
raster linea per linea,
si spazza tutto lo schermo un certo numero di volte al secondo (refresh rate)
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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a 58
Immagine: su che display hardware ?
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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a 59 1980(Asteroids – Atari )
1984(Bomb jack – Tehkan)
Display vettoriali
Display CRT
Frame buffer
• Una porzione di memoria dedicata alla memorizzazione dell’immagine
– come array 2D di pixel da mostrare a video.
• Caratteristiche:
– Risoluzione (numero di pixel)
• Range tipici 320x200 .. 1600x1200 – Profondità (bit per pixel)
• Range tipici 1 .. 32 (128)
• Divisi in tipicamente 4 (o 3) canali ( R, G, B e Alpha)
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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a 60
Rendering…
• Ci occuperemo principalmente di:
Real Time 3D Rendering Real Time 3D Rendering Real Time 3D Rendering Real Time 3D Rendering
Scena 3D rendering Immagine
screen buffer screen buffer screen buffer screen buffer ( array 2D di pixel ) N volte al sec
N volte al sec N volte al sec N volte al sec ( es N=60 )
dal resto dell' applicazione
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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a 61
Real Time 3D Rendering
Problema challanging! per esempio:
• pixel pixel pixel pixel = 32 bit = 4 bytes ("pixel depth")
• screen buffer screen buffer screen buffer screen buffer = 1024 x 768 pixels ("screen resolution")
• frame rate frame rate frame rate frame rate = 60 Hrz ("fps")
188 MegaBytes 188 MegaBytes 188 MegaBytes 188 MegaBytes / / / / sec sec sec sec
(in questo esempio) (in questo esempio) (in questo esempio) (in questo esempio)
• total total total total = 4 x 1024 x 768 x 60 byte al sec ("fill-rate", in bytes )
(e (e (e
(e mancano mancano mancano altri mancano altri altri altri fattori fattori fattori moltiplicativi fattori moltiplicativi moltiplicativi moltiplicativi, come depth complexity, , come depth complexity, multipassate , come depth complexity, , come depth complexity, multipassate multipassate multipassate… … … vedremo … vedremo vedremo vedremo))))
62M 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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a
Real Time 3D Rendering
• Fill-rates molto elevati – Anticipazione:
...e il fill-rate non è sempre il collo di bottiglia – Anticipazione 2:
...e questa è una sottostima del fill-rate.
• manca il fattore depth-complexity ~ x2.5 (come vedremo...)
• sono piu' di 32 bit x pixel
• C'è bisogno di muscoli potenza di calcolo
~
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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a 63
Real Time 3D Rendering
• Problema difficile – fortunatamente,
processo massicciamente parallelizzabile – "embarrassingly parallel"
• Ingrediente base della soluzione:
hardware specializzato hardware specializzato hardware specializzato hardware specializzato
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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a 64
dunque, questo corso...
...è un corso (introduttivo) di:
Real Real Real
Real----Time Time Time Time Hardware Hardware Hardware
Hardware----Based Based Based Based 3D Rendering 3D Rendering 3D Rendering 3D Rendering
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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a 65
Non ci occuperemo di altri aspetti della CG:
(sono solo 6 CFU )
• Altri paradigmi di rendering
– es. offline rendering, radiosity, global illumination, raytracing…
• Data representation
– es. volumetric data, polygonal meshes, NURBS, splines, subdivision surfaces, LODs, multiresolution structures…
• 3D acquisition (catturare modelli 3D dalla realtà)
– es . “shape from shading (silhouettes)”, range scanning, BRDF acquisition…
• Modellazione di superfici
– es. surface simplification, filtering, denoising, parametrization…
• Image-based rendering + modelling – es. light fields, mixed representations,
• Applicazioni specifiche della CG
– es. scientific or data visualization, beni culturali, games
• Animation techniques
– es. keyframing, cinematica diretta /inversa, skeletal animations, rigging…
• GP-GPU, o CUDA, o OpenCL
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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a 66
Libri di testo?
• Fondamenti di Grafica tridimensionale interattiva Fondamenti di Grafica tridimensionale interattiva Fondamenti di Grafica tridimensionale interattiva Fondamenti di Grafica tridimensionale interattiva
Scateni, Cignoni, Montani, Scopigno McGraw Hill Companies
• Real Real Real Real----Time Rendering Time Rendering Time Rendering Time Rendering (2nd Edition) Tomas Moller & Eric Haines
– una manuale che comprende molto di quello che facciamo nel corso,
…e molto altro
• Vector Math for 3D Computer Graphics Vector Math for 3D Computer Graphics Vector Math for 3D Computer Graphics Vector Math for 3D Computer Graphics
– un compendio molto semplice ed introduttivo di alcune nozioni base – disponibile in rete, con tutorials
• Altre risorse: wikipedia, tutorials OpenGL online
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 1 2 / 1 3 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a 67