Real Time rendering Requisiti real-time richiedono basso carico poligonale sulla pipeline Metodi conservativi e non conservativi Tecniche di culling (
|
|
- Benvenuto Olivieri
- 5 anni fa
- Visualizzazioni
Transcript
1 Real-time rendering
2 Real Time rendering Requisiti real-time richiedono basso carico poligonale sulla pipeline Metodi conservativi e non conservativi Tecniche di culling (conservative) Tecniche di semplificazione (non conservative) Tecniche di Image Based Rendering (ibride)
3 Tecniche di culling
4 Tecniche di culling Principio delle tecniche di culling (conservative): Non far giungere alla rendering pipeline i poligoni non visibili: Perchè nascosti da altri poligoni (Backface culling) Perchè fuori dal volume di vista (Viewfrustum culling) Perchè nascosti da altri oggetti (Occlusion culling)
5 BackFace Culling
6 Backface culling Ogni poligono è associato ad una normale che ne specifica l orientamento Il poligono è detto: Frontfacing,, se la normale è rivolta verso l osservatore Backfacing,, se la normale è rivolta in verso opposto Per oggetti convessi racchiusi da una superficie poligonale chiusa, i poligoni backfacing sono nascosti da quelli frontfacing V = Visibile I = Invisibile
7 Backface culling Rispetto ad un determinato punto di vista SOLO alcuni poligoni sono frontfacing (circa il 50 %) Eliminando questi poligoni teoricamente il miglioramento dell efficienza sarebbe dunque di un fattore 2 Nella pratica il risparmio è inferiore perchè si può conoscere l orientazione del poligono solo dopo le trasformazioni geometriche (a metà della pipeline)
8 Backface culling hardware Le moderne architetture HW implementano un efficiente test di backface Questo test permette di trascurare i poligoni backfacing prima della fase di Illuminazione Il test è un semplice prodotto scalare fra la normale al poligono (Np) e la direzione di vista (D): B = Np. D B<0 Poligono frontfacing B>0 Poligono backfacing Np
9 Backface culling software Sarebbe preferibile individuare i poligoni backfacing prima di arrrivare alla pipeline Tecniche software per effettuare il test prima dei calcoli geometrici Efficienti se usano strutture gerarchiche costruite in una fase di preprocessing NORMAL MASKS (Zhang e Hoff, 1997) Fase di preprocessing (costruzione delle normal masks) Fase di run-time (esecuzione del test)
10 BF culling: Normal Masks Clusterizzazione delle normali (pre-processing): processing): Bounding cube sulla sfera di raggio unitario Suddivisione del cubo in una griglia n x n x 6 Proiezione della griglia sulla sfera La partizione della sfera è NON uniforme, ma efficiente: l appartenenza di una normale ad un settore è una semplice intersezione raggio-cubo Le celle del bounding cube vengono proiettate sulla superficie della sfera. Ogni cella proiettata forma un cluster di normali
11 BF culling: Normal Masks Backface Test (Run-Time): Ad ogni frame si calcolano i CLUSTER backfacing Un cluster è backfacing se TUTTE le normali in esso contenute sono backfacing Nella pratica si testano solo gli estremi: i 4 angoli della cella Si costruisce una bitmask per ogni cluster (6xn 2 bit di cui uno solo ad 1 -> ottimizzabile) e la si associa ad ogni poligono. Per ogni frame si costruisce la backmask ovvero la bitmask dei cluster backfacing (OR delle relative bitmask) Per ogni poligono il test è un semplice AND logico (il prodotto scalare è più costoso) es n=1, poly P i ha normale N i con bitmask backmask= > P i è backfacing
12 BF culling: Normal Masks Restano i 4 prodotti scalari per ogni cluster, uno per ogni normale all angolo della cella Non esiste altro modo per sapere se una normale è back facing? Proviamo a vedere se, data una direzione di vista, possiamo, a priori, determinare un fascio di direzioni che siano SEMPRE backfacing Tecnica conservativa : non elimina tutti i possibili poligoni backfacing ma li screma. Gli altri verranno eliminati dall HW grafico con il backface culling integrato.
13 BF culling: Normal Masks Fast backfacing test: - Proiezione parallela: 180 attorno alla Dvista backfacing a priori - Proiezione prospettica: Si individua un angolo analogo (180-FOV) comunque backfacing Proiezione prospettica: Si considera la proiezione prospettica come se fosse un cono di infinite proiezioni parallele Lungo ogni possibile direzione c è un angolo di 180 backfacing L angolo comune a tutte le possibili direzioni è backfacing a prescindere dalla posizione dell oggetto nel FOV
14 ViewFrustum Culling
15 Viewfrustum culling Le primitive geometriche che non rientrano nel volume di vista (ViewFrustum) non sono visibili dall osservatore Si possono individuare queste primitive e non farle arrivare alla pipeline di rendering
16 Viewfrustum culling CLIPPING Eliminazione dei triangoli che non rientrano nel volume di vista (anche di porzioni di essi) Efficiente tecnica HW Avviene negli ultimi stadi della pipeline Non riduce il carico poligonale sull HW grafico
17 Viewfrustum culling E un Clipping anticipato, allo scopo di ridurre la lista di poligoni sulla pipeline La geometria è divisa in due porzioni: Inside Viewfrustum (visibile) RENDERED Outside Viewfrustum (invisibile) CULLED VF Culling semplice: Per ogni poligono si effettua il test di inclusione nel VF Inefficace per un alto numero di poligoni Necessità dell uso di Scene Graph osservatore
18 Viewfrustum culling VF Culling gerarchico: Test effettuato sulla cella (Bounding Volumes o nodo dello SG) Se la cella è TUTTA FUORI del VF, lo sono tutti i poligoni racchiusi CULLED Se è TUTTA DENTRO il VF, lo sono tutti i poligoni racchiusi RENDERED Se è PARZIALMENTE dentro il VF: Test sulle celle di livello inferiore Se siamo all ultimo livello: Test sui singoli poligoni (non efficace) Tutti i poligoni RENDERED (non efficace ma veloce se sono pochi)
19 Viewfrustum culling Frame to Frame Coherence: Oggetti non visibili in t, saranno probabilmente non visibili anche in t+dt Test di coerenza rispetto a traslazione (Dd) e rotazione (Dq) del viewpoint: BS Dd BS Dq Dd < distanza Ancora fuori Dd > distanza Check direzione, poi Eventualmente check VF Funziona SEMPRE??? Considerare distanza DAI PIANI -> già calcolata per VFC ma va memorizzata Dq in direzione contraria Ancora fuori Dq in direzione concorde Check VF
20 VF Culling test Un entità è fuori dal VF se è dietro almeno uno dei 6 piani del VF Considerando i piani orientati con normale verso l interno del VF: Per un punto: distanza dal piano < 0 BB BS Per una sfera: BS distanza centro dal piano < - r BB BB Per un box: BS distanza dei sei vertici < 0 (serve controllarli tutti? guardiamo le diagonali...) Il calcolo può dunque ridursi a distanze di punti. Calcolare le distanze può essere rognoso (le eq. di questi piani sghembi...) però:
21 Frustum in Clip Space La trasformazione projection trasforma il viewing frustum in un cubo di vertici (±1, 1,±1, ±1) (clip space) I piani nel Clip Space sono facili da calcolare: Eq. generica: ax+by+cz+d = 0 In questo caso, tutti del tipo x = 1, x = -1, etc. Usando la matrice di projection, posso trasformare i punti da controllare in clip space ed effettuare i test molto velocemente! Alternativamente posso lavorare in eyespace antitrasformando i piani (molto elegante )
22 Occlusion Culling
23 Occlusion culling Alcune primitive, pur essendo front-facing facing e rientrando nel VF, possono essere occluse da primitive appartenenti ad altri oggetti Z-Buffering Occlusione testata a livello di pixel Per ogni (x,y,z) nello WindowSpace, si confronta il valore con quello presente nello z-buffer relativamente alla posizione (x,y) Se la z è minore, il punto è occluso Anche in questo caso: Si effettua a VALLE della pipeline Farebbe comodo elimare gli oggetti occlusi PRIMA della pipeline Attenzione: solitamente gli algoritmi di Occlusion Culling sono pesanti, vale la pena usarli solo per modelli MOLTO complessi
24 Occlusion culling: HOM Hierarchical Occlusion Map (Zhang, Manocha, Hudson e Hoff 1997) Fase di preprocessing: Individuazione degli OCCLUDER (probabili occlusori) Abbastanza grandi, non troppi poligoni Creazione del db degli OCCLUDER A run-time se ne estraggono alcuni, a seconda di dimensione e distanza dal VP Per ogni oggetto va effettuato un depth test,, per verificare se è dietro un occlusore
25 Occlusion culling: HOM Qual è il depth-testtest che si usa? Depth-testtest minimale: si testa su un piano situato dietro l ultimo occlusore.. Se un oggetto ha il punto più vicino (z più piccola) al di là di questo piano, è sicuramente dietro ognuno degli occlusori (QUESTO NON VUOLE ANCORA DIRE CHE ESSO SIA OCCLUSO!) Bisogna verificare se un oggetto è effettivamente nascosto dalla sagoma degli occlusori ma
26 Occlusion culling: HOM testare tutte le occlusioni può costare troppo! Fase di run-time: Tracciamento in bianco dei soli occlusori si ricava una mappa gerarchica (cluster 2x2, colore medio tra i 4: tonalità di grigio) Confronto della proiezione dei BV degli oggetti con la mappa (si comincia dal livello più approssi- mato): Se la proiezione cade tutta in una zona bianca, l oggetto PUO essere occluso, e si passa al depth-testtest Se anche solo un pixel è NON-bianco, si passa al livello di mappa immediatamente superiore Il depth test viene effettuato SOLO sugli oggetti che, in qualche livello, occupano una zona bianca (potenzialmente occlusi) Si può effettuare un culling aggressivo (non conservativo), stabilendo una soglia di grigio che venga equiparato al bianco
27 Occlusion culling: HOM
28 Portal Culling
29 Potentially Visible Sets Tecnica a più alto livello, per ambienti architettonici Nuova suddivisione dell ambiente in CELLE: Volume di spazio (di solito BOX) PORTALE: Area 2D che connette due celle Negli ambienti architettonici: CELLA = Stanza PORTALE = Porta o Finestra (caso particolare: SPECCHIO) Due celle si possono vedere attraverso un portale Potentially visible set: Insieme delle celle visibili da un certo punto di vista
30 Potentially Visible Sets Cella attiva: cella in cui si trova l osservatore La cella attiva fa parte del PVS Le celle visibili dalla cella attiva (quelle connesse da un portale che rientra nel VF) fanno parte del PVS Le celle che non fanno parte del PVS possono essere tagliate La visibilità delle celle interne al PVS va studiata con le tecniche standard Non adatto per tutti i modelli PVS generalizzati: combinazione con BSP-trees
31 Tecniche di Semplificazione
32 Tecniche di semplificazione Agiscono sulla complessità del modello Si basano sull idea che, in particolari circostanze, è possibile visualizzare modelli semplificati senza che il risultato finale sia apprezzabilmente modificato Generalmente, comunque, c è una perdita di dettaglio: tecniche non conservative. Tecniche di semplificazione: Tecniche di Level of Detail Tecniche di Image Based Rendering
33 Semplificazione Mesh di triangoli Mesh Approssima una superficie Qualità approssimazione Numero di triangoli Obiettivo ideale: fissato un numero di triangoli semplificare la mesh in modo da commettere il minimo errore possibile Si tratta di un task pesante (effettuato off-line)
34 Semplificazione Metodi Incrementali Metodi Incrementali: Il processo di semplificazione è costituito da una sequenza di local updates Dimensioni della mesh e precisione dell approssimazione si riducono monotonicamente nel corso della semplificazione
35 Semplificazione - Metodi Incrementali Local update actions: Vertex Removal Edge Collapse
36 Semplificazione - Decimazione Operano solo sui vertici Ciascun vertice è classificato come eliminabile (se la sua rimozione introduce un errore < ε) ) o no Struttura comune di questa classe di algoritmi: Costruisci l insieme dei vertici eliminabili (E) Loop Seleziona un vertice v E Elimina v e aggiorna la mesh Until (dimensione mesh OK)
37 Semplificazione Esempio 2 Milioni di triangoli 7500 triangoli E possibile recuperare in qualche modo il dettaglio visuale perso con la semplificazione?
38 Recupero del dettaglio Algoritmo: Produce una mesh lo-res a partire da quella hi-res Parametrizza la lo-res mesh su una superficie 2D, in modo da sfruttare il texture mapping Campiona la hi-res mesh ottenendo una normale per ogni pixel La normal map è usata per effettuare il rendering su texture con modelli avanzati di illuminazione
39 Recupero del dettaglio Simplification & Detail Recovering Rendering on texture Image Based Lighting with self-occlusion evaluation
40 Recupero del dettaglio
41 Level of Detail Oggetti lontani dal punto di vista non necessitano di rappresentazione particolareggiata: i piccoli dettagli a grande distanza sono indistinguibili Possono dunque essere semplificati a seconda della loro distanza e/o angolazione dall osservatore Il LOD consiste nella creazione di più alternative per la stessa mesh con grado decrescente di complessità Maggiore è la distanza, minore è il dettaglio richiesto
42 Level of Detail I LOD possono essere creati: Off-line (controllo sulla qualità, complessità prefissata) A Run-time (minor controllo qualitativo, complessità variabile) Esempio run-time: mesh progressive Lod dinamici Si memorizzano solo i Δ fra le rappresentazioni successive Ottimo per distribuzione in rete
43 Image Based Rendering
44 Image Based Rendering Tecniche di culling e di LOD basate sulla riduzione dei poligoni IBR basato sulla sostituzione di poligoni con immagini (solitamente texture) IBR tende a rendere il rendering time indipendente dalla complessità della scena Molto efficace se usato insieme alle tecniche di culling e di LOD Metodi: Statici (Database Approach, Sprites) Dinamici
45 Database Approach Idea di base: si renderizzano tutte le possibili viste di un oggetto e, dinamica-mente, si sceglie quella corrispondente al punto di vista attuale Nella pratica si sceglie un numero limitato di punti di vista. Per le viste intermedie: Si visualizza l immagine corrispondente al punto di vista più vicino Si effettua un interpolazione (morphing) tra le immagini
46 Billboards Oggetti anche molto complessi vengono sostituiti da semplici geometrie texturizzate Caso limite: un solo poligono texturizzato La geometria viene trasformata affinchè, frame per frame, sia sempre rivolta verso il punto di vista La trasformazione è solitamente una rotazione verso l osservatore Per oggetti a simmetria cilindrica o sferica è una buona approssimazione Simmetria: Cilindrica: rotazione assiale, q = arccos(vd Bn) Sferica: due assi di rotazione
47 Billboard: lens flare Effetto causato da una lente di una camera (reale) diretta verso una sorgente di luce Modellabile come billboard sovrapposto alla geometria. Possibile modulare le dimensioni e la trasparenza in funzione della distanza +
48 MultiTexturing Il MT non è IBR in senso stretto, ma permette di simulare, con l uso di più texture, non solo dettagli geometrici ma anche dettagli relativi a shading e rugosità. Base Texture Bump Map Light Vector Final Image Evidentemente le mappe simulano effetti statici.. Se, ad esempio, la sorgente luminosa si muove, la lighting-map deve essere generata on demand o modificata algoritmicamente.
49 MultiTexturing Multi-pass rendering Le vecchie architetture grafiche supportavano solo UN livello di texture (quello di diffuse). Per ottenere risultati equivalenti bisognava renderizzare più volte l oggetto con texture diverse e comporre il risultato con varie opzioni di blending. Multi-texturingtexturing Le attuali architetture supportano direttamente PIU livelli di texture. E possibile sovrapporre mappe di diffuse, riflessione, auto-illumina- zione, bump, shadows etc.
50 Impostori Sfruttano la frame-to-frame coherence Il costo del rendering della geometria, ripartendo da zero ad ogni frame, è alto Se non ci sono improvvisi cambi di punto di vista, ogni frame è molto simile al precedente Pertanto ampie porzioni dello schermo restano invariate rispetto al frame precedente: perchè non riutilizzare direttamente tali porzioni? Le immagini rasterizzate di alcuni oggetti (preferibilmente distanti) possono essere utilizzate nuovamente nei frame successivi come texture da applicare su poligoni semitrasparenti
51 Impostori e LOD IMPOSTORI: Poligoni semitrasparenti su cui si mappa l immagine opaca di un oggetto Possono essere considerati un estensione di concetto di LOD: IMPOSTORE=Un entità che è più veloce da disegnare dell oggetto reale, ma che ne mantiene le principali caratteristiche visuali LOD: Impostore view-independentindependent IMPOSTORE: view-dependent (L immagine cambia a seconda del punto di vista)
52 Impostori: view-dependent L immagine utilizzata per l impostore è una fedele rappresentazione dell oggetto SOLO da un certo punto di vista V. Se si cambia punto di vista, l immagine è tanto più diversa quanto più ci si allontana da V In un certo intorno di V l immagine resta una buona approssimazione dell oggetto Al di fuori di tale intorno bisogna renderizzare l oggetto vero e proprio o un nuovo impostore Come si creano gli impostori? Off-line (staticamente simile al Database Approach. Differenza: DB approach solo per oggetti noti a priori) On-line (dinamicamente overhead di campionamento)
53 Impostori: creazione Si individua la geometria da sostituire Si renderizzano i poligoni su un fondale completamente nero Si crea una texture usando l immagine campionata Si applica la texture su un quadrilatero mostrato al posto della geometria
54 Impostori on-line Le tecniche off-line sono un estremizzazione del LOD Vantaggio: la creazione degli impostori non appesantisce la fase di run-time Svantaggio: non sfruttano affatto la frame-to-frame coherence Gli impostori generati dinamicamente vengono creati durante la fase di run-time Una volta generato, l impostore viene riutilizzato fintanto che la differenza con l oggetto reale non eccede una soglia Necessarie metriche per studiare la validità di un impostore Utilizzabili per oggetti o per cluster
55 Impostori: metrica di validità L impostore è banalmente valido nel frame in cui viene generato L impostore resta SEMPRE valido se l osservatore compie movimenti di SOLA rotazione (si dimostra che la proiezione sul viewplane resta invariata) Se si effettuano movimenti di traslazione, la rappresentazione cambia. Oltre un certo Ds s laterale o in avanti, l errore diventa troppo grosso E possibile trovare una relazione tra lo spostamento Ds s e l errore in termini di pixel, e ricavare il DsMAX corrispondente alla soglia fissata Se l errore eccede la soglia, è necessaria la creazione di un nuovo impostore
56 Impostori: errori visuali Un problema nell uso degli impostori è legato ai possibili errori relativi alla compenetrazione degli oggetti L errore avviene a causa della perdita della tridimensionalità degli oggetti
57 Impostori: errori visuali Un altro problema è la visualizzazione di possibili crack nell immagine A causa dello spostamento del punto di vista A causa delle approssimazioni nei calcoli A causa di una soglia di errore superiore a 1 pixel DEMO
58 Impostori stratificati Per recuperare almeno parzialmente le informazioni relative alla tridimensionalità si possono usare più strati per lo stesso impostore Si immagina di affettare l oggetto e di realizzare un impostore per ogni fetta. Più sono le fette, migliore è l approssimazione. La tridimensionalità recuperata diminuisce i problemi di compe- netrazione Se gli intervalli sono leggermen- te sovrapposti, migliora anche la situazione rispetto ai crack Trade-off: maggiore richiesta di texture memory
Tecniche di semplificazione
Tecniche di semplificazione Agiscono sulla complessità del modello Si basano sull idea che, in particolari circostanze, è possibile visualizzare modelli semplificati senza che il risultato finale sia apprezzabilmente
richiedono basso carico poligonale sulla pipeline Metodi conservativi e non conservativi
Real Time rendering Requisiti real-time richiedono basso carico poligonale sulla pipeline Metodi conservativi e non conservativi Tecniche di culling (conservative) Tecniche di semplificazione (non conservative)
Computer Graphics. Se non si vede, che non ci sia CULLING. Tipi di Culling. Notazione. Occlusion culling
Computer Graphics Lezione 6: culling: se c è ma non si vede! Università dell Insubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2011/12 Marco Tarini Se non si vede,
Computer Graphics. Se non si vede, che non ci sia CULLING. Notazione. Lo chiamiamo culling se si scartano primitive intere.
Computer Graphics Lezione 6: culling: se c è ma non si vede! Università dell Insubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2010/11 Marco Tarini Se non si vede,
Grafica Computazionale
Grafica Computazionale Rimozione delle superfici nascoste Fabio Ganovelli fabio.ganovelli@gmail.com a.a. 2006-2007 Dalle diapositive a corredo del libro: Fondamenti di Grafica Tridimensionale Interattiva
Cenni al rendering di ombre
Cenni al rendering di ombre Davide Gadia Corso di Programmazione Grafica per il Tempo Reale Laurea Magistrale in Informatica per la Comunicazione a.a. 2013/2014 Ombre Componenti fondamentali per aumentare
Stadio di Applicazione
Stadio di Applicazione SCENE MANAGEMENT Grafica 3D in tempo reale: Realtà virtuale: refresh rate minimo 25 Hz Necessità: processare velocemente scene complesse (t frame
Cenni al rendering di ombre
Cenni al rendering di ombre Davide Gadia Corso di Programmazione Grafica per il Tempo Reale Laurea Magistrale in Informatica per la Comunicazione a.a. 2012/2013 Ombre Componenti fondamentali per aumentare
Tecniche per applicazioni interattive
Tecniche per applicazioni interattive Dove si introducono alcune tecniche di rendering adatte alla realizzazione di applicazioni interattive. Introduzione Visibility culling Livello di dettaglio continuo
Grafica al Calcolatore Tecniche di mappatura - 1. Introduzione
Grafica al Calcolatore Tecniche di mappatura - 1 Introduzione Grafica al Calcolatore Tecniche di mappatura - 2 Texture mapping Grafica al Calcolatore Tecniche di mappatura - 3 La texture può essere applicata
Corso di Tecniche Avanzate per la Grafica Texturing
Corso di Tecniche Avanzate per la Grafica Texturing Docente: Massimiliano Corsini Laurea Specialistica in Informatica Università di Ferrara Texturing Il concetto di texturing è importante Si tratta di
Grafica al Calcolatore Fotorealismo - 1. Introduzione
Grafica al Calcolatore Fotorealismo - 1 Introduzione Grafica al Calcolatore Fotorealismo - 2 Environment map Grafica al Calcolatore Fotorealismo - 3 r v è il versore della direzione di vista v riflesso
Le problematiche della grafica tridimensionale
Architetture per la grafica 3D Le problematiche della grafica tridimensionale Marco Gribaudo marcog@di.unito.it Per riuscire a comprendere a pieno le motivazioni che hanno determinato le scelte effettuate
Lighting. Realtà Virtuale: il presente, il passato, Lighting e il Shading futuro
ighting Illuminazione Determinare le caratteristiche della luce che arriva da un punto della scena all occhio di chi la osserva Problema computazionalmente oneroso Fenomeni fisici correlati: Illuminazione
Materiali avanzati. Informatica Grafica per le arti. Raytracing. Raytracing. Raytracing. Raytracing. Raytracing
Informatica Grafica per le arti Materiali avanzati Marco Gribaudo marcog@di.unito.it Molti degli oggetti modellabili sono costituiti da superfici trasparenti o riflettenti. I materiali Raytrace permettono
Realtà Virtuale: il presente, il passato, il Shading futuro
Lighting Illuminazione Determinare le caratteristiche della luce che arriva da un punto della scena all occhio di chi la osserva Problema computazionalmente oneroso Fenomeni fisici correlati: Illuminazione
Grafica al Calcolatore Rendering volumetrico - 1. Introduzione
Grafica al Calcolatore Rendering volumetrico - 1 Introduzione Grafica al Calcolatore Rendering volumetrico - 2 Studieremo sono due tecniche base per la visualizzazione di dati volumetrici: Rendering volumetrico
Grafica al calcolatore - Computer Graphics
Grafica al calcolatore - Computer Graphics Pipeline di rasterizzazione 13/03/17 Grafica 2017 1 Rasterization pipeline Abbiamo descritto la procedura intuitiva del ray-casting Abbiamo tuttavia già visto
Intersezioni e collisioni
Intersezioni e collisioni Dove si descrivono i principali algoritmi per verificare l intersezione tra oggetti geometrici o rilevarne la collisione Introduzione Richiami di geometria analitica Intersezioni
Caveat. Sintesi di Immagini. Sintesi di Immagini. Rendering: Approccio Fisico
Sintesi di Immagini Metafora fondamentale Object vs viewer Object (scene): rappresentazione digitale (forma e caratteristiche) di un oggetto reale tridimensionale Viewer: strumento che permette di otternere
Caveat. Object e viewer, come tutte le metafore, sono entità non definite rigidamente. La luce fa parte del viewer? Il viewer è anch esso un object?
Sintesi di Immagini Metafora fondamentale Object vs viewer Object (scene): rappresentazione digitale (forma e caratteristiche) di un oggetto reale tridimensionale Viewer: strumento che permette di otternere
INFORMATICA GRAFICA SSD ING-INF/05 Sistemi di elaborazione delle informazioni a.a. 2007/2008
INFORMATICA GRAFICA SSD ING-INF/05 Sistemi di elaborazione delle informazioni a.a. 2007/2008 CAP 6. Rendering grafico Lighting and Shading Illuminazione Modelli di illuminazione Rendering tenendo conto
La Pipeline Grafica. Vediamo come avviene il rendering, ovvero la visualizzazione di oggetti. Introduzione. La Pipeline Grafica.
La Pipeline Grafica Vediamo come avviene il rendering, ovvero la visualizzazione di oggetti. Introduzione La Pipeline Grafica Spazio vista Spazio 3D-screen Shading Rasterizzazione Rimozione delle facce
ESTRAZIONE DI DATI 3D DA IMMAGINI DIGITALI. (Visione 3D)
ESTRAZIONE DI DATI 3D DA IMMAGINI DIGITALI () Calibrazione intrinseca Spesso risulta utile calibrare la sola componente intrinseca di un sistema di visione (matrice K), e non si dispone di oggetti di forma
Grafica computazionale
Grafica computazionale Lezione 4 (slide parzialmente basate su Computer Graphics - MIT Opencourseware Grafica Computazionale - Massimiliano Corsini Università di Siena) 1 Textures Riviste Abbiamo visto
Grafica al calcolatore - Computer Graphics
Grafica al calcolatore - Computer Graphics 5 - Rendering 29/10/12 Grafica 2013 1 Rendering Il termine rendering indica la serie di algoritmi, geometrici e non, a cui si sottopone una data descrizione di
Grafica al calcolatore - Computer Graphics
Grafica al calcolatore - Computer Graphics Pipeline di rasterizzazione 29/02/16 Grafica 2015 1 Rasterization pipeline Abbiamo descritto la procedura intuitiva del ray-casting Abbiamo tuttavia già visto
Grafica al Calcolatore Tecniche avanzate - 1. Image-based rendering
Grafica al Calcolatore Tecniche avanzate - 1 Image-based rendering Grafica al Calcolatore Tecniche avanzate - 2 3D warping Grafica al Calcolatore Tecniche avanzate - 3 Derivazione della formula del warping
LA STRUTTURA NARRATIVA. Prof. M.A. Alberti, A. Berolo, P. Pasteris
LA STRUTTURA NARRATIVA Prof. M.A. Alberti, A. Berolo, P. Pasteris Pipeline Modellazione Texturing Rigging/ Skinning Animazione Luci/ Compositing Rendering Poligonale: La modellazione poligonale si basa
Corso di Grafica Computazionale
Corso di Grafica Computazionale Image-based rendering Docente: Massimiliano Corsini Laurea Specialistica in Ing. Informatica Università degli Studi di Siena Image-based Rendering L idea base è utilizzare
Geometria Solida Costruttiva (CSG)
Geometria Solida Costruttiva (CSG) Seminario di Elementi di Grafica Digitale 25/05/2005 Davide Prade Geometria Solida Costruttiva (CSG) 1 Introduzione Oggetti reali e virtuali possono essere rappresentati
Corso di Grafica Computazionale
Corso di Grafica Computazionale Real-Time Rendering Introduzione all hardware grafico Docente: Massimiliano Corsini Laurea Specialistica in Ing. Informatica Università degli Studi di Siena Hardware Grafico
Stabilire se il punto di coordinate (1,1) appartiene alla circonferenza centrata nell origine e di raggio 1.
Definizione di circonferenza e cerchio. Equazione della circonferenza centrata in O e di raggio R. Esercizi. La circonferenza e il cerchio Definizioni: dato un punto C nel piano cartesiano e dato un numero
Segnale analogico. Analogico vs digitale. Segnale digitale. Trasformazione da analogico a digitale
LEZIONI 2 e 3 Rappresentazione dell informazione 53 Analogico vs digitale LEZIONI 2 e 3 Rappresentazione dell informazione 54 Segnale analogico Il computer può lavorare soltanto con grandezze di tipo digitale
Grafica al calcolatore - Computer Graphics
Grafica al calcolatore - Computer Graphics 9 Tecniche di Mapping 24/11/12 Grafica 2013-9 1 Introduzione Il modello di illuminazione di Phong è abbastanza versatile: con una scelta opportuna dei vari parametri
Prisma retto. Generatrice. Direttrice. Prisma obliquo. Nel caso le generatrici non siano parallele. Generatrice
Oggetti (identificati) nello spazio Una porzione di piano delimitata da una linea spezzata chiusa si chiama poligono, un solido delimitato da un numero finito di facce piane si chiama poliedro. In un poliedro
GEOGRAPHICAL INFORMATION SYSTEM PER L ANALISI AMBIENTALE. Nicola Gilio. Dott. Nicola Gilio
Nicola Nicola Gilio Gili GEOGRAPHICAL INFORMATION SYSTEM PER L ANALISI AMBIENTALE Dott. Nicola Gilio Un sistema informatizzato in grado di immagazzinare dati descrittivi della superficie terrestre Definizioni
Soluzione. Il dominio E consiste nella parte di spazio contenuta nella sfera ma esterna al cono rappresentata in Figura 1. Infatti
Esercizio 1 (G. Ziglio). (6 punti) Calcolare il volume della porzione di spazio E interna alla sfera di equazione x 2 + y 2 + z 2 = 1 ed esterna al cono di equazione z 2 = x 2 + y 2 E = (x, y, z) R x 2
Disparity Inverse Perspective Image
Disparity Inverse Perspective Image Paolo Medici Dipartimento di Ingegneria dell Informazione di Parma 19 maggio 2008 1 Il problema Dati due punti in 3 dimensioni definiti come à = (,, 0)T e B = (,, Z)
ˆ b, si usa la convenzione di prendere. come verso positivo quello antiorario e come verso negativo quello orario.
Capitolo 4 Le rotazioni 4.1 Richiami di teoria E' opportuno ricordare che, dato un angolo orientato ao ˆ b, si usa la convenzione di prendere come verso positivo quello antiorario e come verso negativo
Corso di Grafica Computazionale
Corso di Grafica Computazionale Texturing Docente: Massimiliano Corsini Laurea Specialistica in Ing. Informatica Università degli Studi di Siena Texturing Il concetto di texturing è importante Si tratta
Texture Mapping Realtà Virtuale: il presente, il pass T a e t x o u, r i e l f M u a t p u pi ro ng
Texture Mapping Texture Mapping Texture coordinates associate ai vertici del triangolo =>> t corrispondenza tra spazio dello schemo (fragment)) e texture-space space. Colore di ogni pixel determinato in
Obiettivi. Costruzione di interfacce. Esame. Programma. Strumenti. Concetti di base
Obiettivi Costruzione di interfacce Paolo Cignoni p.cignoni@isti.cnr.it http://vcg.isti.cnr.it/~cignoni Progettazione e realizzazione di applicazioni interattive, con un interfaccia utente non banale che
Low Level Vision: Trasformata di Hough
Low Level Vision: Trasformata di Hough Prof Sebastiano Battiato Rilevamento di linee Le linee sono feature importanti perché permettono di definire analiticamente o approssimare molte forme (in particolare
3DS MAX VRAY + VIRTUAL REALITY. Dalla configurazione del software al rendering finale in 360
3DS MAX VRAY + VIRTUAL REALITY Dalla configurazione del software al rendering finale in 360 Obbiettivi del corso Nel corso 3Ds Max VRay and Virtual Reality (livello intermedio), ed attraverso il metodo
La rappresentazione cartografica è una forma di descrizione del territorio fondata sulla restituzione delle relazioni spaziali di elementi geografici
Cartografia digitale e modelli di dati spaziali modelli vettoriali e modelli raster La descrizione cartografica La rappresentazione cartografica è una forma di descrizione del territorio fondata sulla
Lezione 6 Richiami di Geometria Analitica
1 Piano cartesiano Lezione 6 Richiami di Geometria Analitica Consideriamo nel piano due rette perpendicolari che si intersecano in un punto O Consideriamo ciascuna di queste rette come retta orientata
Video Analysis (cenni) Annalisa Franco
1 Video Analysis (cenni) Annalisa Franco annalisa.franco@unibo.it http://bias.csr.unibo.it/vr/ 2 Visual motion Un video è una sequenza di frame catturati nel corso del tempo Il valori dell immagine sono
Texture mapping. Davide Gadia Corso di Programmazione Grafica per il Tempo Reale Laurea Magistrale in Informatica a.a. 2014/2015
Texture mapping Davide Gadia Corso di Programmazione Grafica per il Tempo Reale Laurea Magistrale in Informatica a.a. 2014/2015 Texturing Modifica dell'apparenza di una superficie Tramite informazioni
Processo di rendering
Processo di rendering 1 Trasformazioni di vista Trasformazioni di vista Il processo di visione in tre dimensioni Le trasformazioni di proiezione I parametri della vista 3D I sistemi di coordinate 2 I parametri
Marco Tarini 10/22/2015
L attributo più comune: la normale Vettore direzione unitario Rappresenta l orientamento della superficie Usato per il lighting A volte, calcolate automaticamente dalla geometria Ma l artista decide quali
Poligoni, Poliedri e Volumi
Poligoni, Poliedri e Volumi Poligoni Un poligono è una figura con n la5, definita da un insieme ordinato di almeno 3 pun5 nel piano, nel quale ogni punto è collegato al successivo (e l ul5mo al primo)
Computer Graphics. Digital representation of 3D objects. 3D Rendering. Scena 3D rendering image. Marco Tarini - univ insubria AA 2016/2017
Computer Graphics Digital representation of 3D objects Università dell Insubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2016/17 Marco Tarini 3D Rendering Scena 3D
Potenziale elettrostatico
Doppio strato piano Potenziale elettrostatico Consideriamo il lavoro compiuto dalla forza elettrica quando una particella di prova di carica q viene spostata in un campo elettrico E. Possiamo definire
Progettazione Multimediale REGOLE DI COMPOSIZIONE GRAFICA. Parte 3. Lo spazio. Prof. Gianfranco Ciaschetti
Progettazione Multimediale REGOLE DI COMPOSIZIONE GRAFICA Parte 3 Lo spazio Prof. Gianfranco Ciaschetti Solitamente, per spazio intendiamo un volume in tre dimensioni di estensione illimitata. In grafica,
Algebra lineare Geometria 1 15 luglio 2009
Algebra lineare Geometria 1 15 luglio 2009 Esercizio 1. Nello spazio vettoriale reale R 3 [x] si considerino l insieme A k = {1 + x, k + (1 k)x 2, 1 + (k 1)x 2 + x 3 }, il vettore v k = k + kx x 3 e la
PointCloud 5.0 Anno 2009
PointCloud 5.0 Anno 2009 Compatibilità con AutoCAD 2010 e sistemi operativi a 64 bit Entità cilindro-kubit - un oggetto nuovo ed interno di PointCloud (entità personalizzata) con molteplici funzioni -
Studio di tecniche per la rivelazione di traiettorie di veicoli in movimento in sequenze video
Dipartimento di Elettronica e Telecomunicazioni Università di Firenze Laboratorio Comunicazioni & Immagini Studio di tecniche per la rivelazione di traiettorie di veicoli in movimento in sequenze video
Il modello di Phong. Il modello di Phong. Il modello di Phong. Componente emissiva. Componente emissiva
Il modello di Phong Costruzione di Interfacce Lezione 7 Shading cignoni@iei.pi.cnr.it http://vcg.isti.cnr.it/~cignoni In termini matematici un modello di illuminazione viene rappresentato da un equazione
Introduzione al Many/Multi-core Computing
Introduzione al Many/Multi-core Computing Sistemi Operativi e reti 6 giugno 2011 Outline del corso Introduzione Definizioni Motivazioni Storia Architettura Framework Algoritmica Parte I Introduzione Definizioni
Alessia NOBILE. Geomatica per la Conservazione e la Comunicazione dei Beni Culturali. Università degli Studi di Firenze
ERRORE DI PARALLASSE PUNTO NODALE TESTE PANORAMICHE Alessia NOBILE Geomatica per la Conservazione e la Comunicazione dei Beni Culturali Università degli Studi di Firenze Corso di perfezionamento in Geomatica
Disegno di Macchine. corso per I anno della laurea in ing. meccanica Docente: ing. Francesca Campana
Disegno di Macchine corso per I anno della laurea in ing. meccanica Docente: ing. Francesca Campana Lezione n 9 Sistemi di Computer Aided Design (CAD) Introduzione Il Computer ha un ruolo molto importante
Lezione 11: Solidi, superfici e proiezioni. Le proiezioni. Le proiezioni. Le proiezioni. Le proiezioni. Le proiezioni
Le proiezioni Lezione 11: Solidi, superfici e proiezioni Lo schermo del calcolatore e' in grado di visualizzare immagini bidimensionali. In grafica 3D si modellano oggetti in tre dimensioni. Le proiezioni
1 La traslazione. 2 La composizione di traslazioni. 3 La rotazione
1 La traslazione Per poter applicare una traslazione ad una generica figura geometrica si deve: ± creare il vettore di traslazione AB mediante il comando Vettore tra due punti; ± cliccare con il mouse
Corso di Grafica Computazionale
Corso di Grafica Computazionale Algoritmi di Rendering di Base Docente: Massimiliano Corsini Laurea Specialistica in Ing. Informatica Università degli Studi di Siena Overview Clipping Clipping di punti
Corso di Grafica Computazionale
Corso di Grafica Computazionale Algoritmi di Rendering di Base Docente: Massimiliano Corsini Laurea Specialistica in Ing. Informatica Università degli Studi di Siena Overview Clipping Clipping di punti
SISTEMI INFORMATIVI GEOGRAFICI (GIS)
SISTEMI INFORMATIVI GEOGRAFICI (GIS) Prof. Dipartimento di Elettronica e Informazione Politecnico di Milano SISTEMA INFORMATIVO GEOGRAFICO E UN SISTEMA CHE USA SIA DATI SPAZIALI (CIOE BASATI SU RIFERIMENTI
La trasformazione di camera
La trasformazione di camera 1 Introduzione Per rappresentare un oggetto tridimensionale nello spazio (scena) in un piano bidimensionale (spazio delle immagini, quale il monitor o un foglio) è necessario
Flusso di un campo vettoriale
Flusso di un campo vettoriale Il concetto è stato originariamente introdotto nella teoria dei fluidi, dove il flusso è legato alla quantità di fluido che passa attraverso una data superficie geometrica,
Geometria euclidea. Alessio del Vigna. Lunedì 15 settembre
Geometria euclidea Alessio del Vigna Lunedì 15 settembre La geometria euclidea è una teoria fondata su quattro enti primitivi e sulle relazioni che tra essi intercorrono. I quattro enti primitivi in questione
Liceo scientifico P-Gobetti PROGRAMMAZIONE DI MATEMATICA. Anno scol: Classe: 1C Docente: Rossi Rosalba
Liceo scientifico P-Gobetti PROGRAMMAZIONE DI MATEMATICA Anno scol: 2015-16 Classe: 1C Docente: Rossi Rosalba La programmazione mette in evidenza, per ogni tematica, le conoscenze e le abilità che si ritengono
Grafica al calcolatore - Computer Graphics
Grafica al calcolatore - Computer Graphics 7 Pipeline di rasterizzazione 23/11/13 Grafica 2013 1 Rasterization pipeline Sappiamo implementare ray casting (o ray tracing). Abbiamo tuttavia già visto che
OBIETTIVI DI APPRENDIMENTO
1. Strumenti della matematica L alunno si muove con sicurezza nel calcolo scritto e mentale con i numeri naturali e sa valutare l opportunità di ricorrere a una calcolatrice. Sa applicare la nozione di
Acquisizione del colore
Acquisizione del colore Visual Computing Group 1999 Visual Computing Group 1 Acquisizione del colore Obiettivo: Acquisizione del colore (componente diffusa) di un oggetto tramite fotocamera digitale. Problematiche
PROVA SCRITTA DI GEOMETRIA 2 14 Febbraio 2017
PROVA SCRITTA DI GEOMETRIA 2 14 Febbraio 2017 La prova orale deve essere sostenuta entro il 28 Febbraio 2017 A Fissato un sistema di riferimento cartesiano nello spazio si consideri la quadriche Q di equazione
esportati in formati diversi, di cui il più comune è il DXF (drawing exchange format) che è considerato uno degli standard di interscambio di dati
Autocad Il software è utilizzato per elaborare grafici nell'ambito della progettazione, architettonica, meccanica e/o di altro tipo. I file prodotti da questo software sono di tipo vettoriale, ovvero entità
Stereovisione. Marco Moltisanti. Image Processing Lab Dipartimento di Matematica e Informatica Università degli Studi di Catania
Stereovisione Marco Moltisanti Image Processing Lab Dipartimento di Matematica e Informatica Università degli Studi di Catania moltisanti@dmi.unict.it www.dmi.unict.it/~moltisanti 11 aprile 2013 Introduzione
Grafica Computazionale. Texturing. Fabio Ganovelli a.a
Grafica Computazionale Texturing Fabio Ganovelli fabio.ganovelli@isti.cnr.it a.a. 2005-2006 Texture Mapping Nelle operazioni per frammento si può accedere ad una RAM apposita la Texture RAM strutturata
Alcuni concetti. Unità
Alcuni concetti Campionamento: il processo di selezione di un certo numero di unità da una popolazione di studio predefinita Popolazione di riferimento: l insieme totale, finito o infinito, degli elementi
APPLICAZIONE 3D: VIRTUAL TOUR DAL SITO WEB
APPLICAZIONE 3D: VIRTUAL TOUR DAL SITO WEB 26/08/20 16 Fornire sul sito web un applicazione che all interno di una normale pagina consente agli utenti di visitare una ricostruzione 3D interattiva con texure
Ore annue: 132 MODULO 1
Liceo B. Russell VIA IV NOVEMBRE 35, 38023 CLES Indirizzo: Liceo Linguistico CLASSI 2 e Programmazione Didattica Disciplina: Ore annue: 132 Matematica Settembre ottobre MODULO 1 novembre Disequazioni numeriche
ASSONOMETRIA E PROSPETTIVA
ASSONOMETRIA E PROSPETTIVA 2 Assonometria: trasformazione di uno spazio vettoriale a tre dimensioni in uno a due, in modo che i raggi di proiezione siano paralleli tra loro. Prospettiva: trasformazione
LE TRASFORMAZIONI GEOMETRICHE
pag. 1 LE TRASFORMAZIONI GEOMETRICHE Trasformazione geometrica Movimento rigido Traslazione Simmetria Costruzione di due punti simmetrici rispetto ad una retta Poligoni aventi assi di simmetria Rotazione
Rendering volumetrico
Rendering volumetrico Dove si introducono tecniche per ottenere proiezioni 2D di insiemi campionati di dati 3D Introduzione Rendering volumetrico diretto Estrazione di isosuperfici Grafica al Calcolatore
Il moto armonico. Comincio a studiare il moto di quando il corpo passa per il punto in figura 2 :
Il moto armonico 1. Definizione di moto armonico Un punto P si muove di moto circolare uniforme lungo la circonferenza Γ in figura, con velocità angolare. Considero uno dei diametri della circonferenza
Sistemi di Elaborazione dell Informazione 170. Caso Non Separabile
Sistemi di Elaborazione dell Informazione 170 Caso Non Separabile La soluzione vista in precedenza per esempi non-linearmente separabili non garantisce usualmente buone prestazioni perchè un iperpiano
METODI E TECNOLOGIE PER L INSEGNAMETO DELLA MATEMATICA. LEZIONE n 13
METODI E TECNOLOGIE PER L INSEGNAMETO DELLA MATEMATICA LEZIONE n 13 Parte terza TRASFORMAZIONI GEOMETRICHE Dalle indicazioni nazionali: Descrivere, denominare e classificare figure geometriche, identificando
Grafica al Calcolatore Rendering ed Illuminazione - 1. Introduzione al rendering
Grafica al Calcolatore Rendering ed Illuminazione - 1 Introduzione al rendering Grafica al Calcolatore Rendering ed Illuminazione - 2 Il metodo del pittore: ray casting Grafica al Calcolatore Rendering
Esercitazione 05: Trasformata di Laplace e funzione di trasferimento
Esercitazione 05: Trasformata di Laplace e funzione di trasferimento 28 marzo 208 (3h) Fondamenti di Automatica Prof. M. Farina Responsabile delle esercitazioni: Enrico Terzi Queste dispense sono state
Corso di Tecniche Avanzate per la Grafica
Corso di Tecniche Avanzate per la Grafica Image-based rendering Docente: Massimiliano Corsini Laurea Specialistica in Informatica Università di Ferrara Image-based Rendering L idea base è utilizzare (in