Computer Graphics. Se non si vede, che non ci sia CULLING. Notazione. Lo chiamiamo culling se si scartano primitive intere.

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Computer Graphics. Se non si vede, che non ci sia CULLING. Notazione. Lo chiamiamo culling se si scartano primitive intere."

Transcript

1 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, che non ci sia CULLING cioè: non perdiamo tempo a renderizzare ciò che non si vede buttiamo via le primitive che non cambiano la scena o, che non la cambiano abbastanza facciamolo il prima possibile! (nel pipeline) i chiaro?! (o, o...) Notazione Lo chiamiamo culling se si scartano primitive intere o interi gruppi di primitive Se una primitiva viene spezzata in una parte visibile e una no, lo chiamiamo clipping Se è un frammento ad essere scartato, si tratta di testing quale ci fa piu' gola? Notazione (principalmente) una ottimizzazione! Lo chiamiamo culling se si scartano primitive intere o interi gruppi di primitive Se una primitiva viene spezzata in una parte visibile e una no, lo chiamiamo clipping (principalmente) una necessità! Se e' un frammento ad essere scartato, si tratta di testing (principalmente) una necessità! Tipi di culling quindi é chiaro che la scelta non é fra HW e SW, ma fra solo HW ed entrambi Eseguiti dall'hardware automatici molto efficienti (overhead piccolo) ma scartano tardi, e una primitiva alla volta Eseguiti dall'applicazione (SW) richiedono algoritmi e strutture dati meno efficienti (overhead anche grandino) ma scartano presto, e a gruppi

2 Tipi di culling Conservativi scartano solo se sono sicuri piuttosto, rischiano di diesgnare anche cose che poi non si vedranno casomai, non succede nulla. Si è solo spercato un po di calcolo GPU parentesi notazione parentesi notazione parentesi notazione..."artefatto"! un difetto di modelling: discrepanza fra realtà e modello 3D di rendering: discrepanza fra modello 3D e immagini renderizzate es: inventarsi un dettaglio che non c'era Non Conservativi scartano seguendo un'euristica rischiano di NON disegnare qualcosa che (in parte) era visibile! se succede, si è creato un errore nel renering, cioè un... M a r c o parentesi T a r i n i C o notazione m p u t e r G r a parentesi p h I c s 2 0 notazione 1 0 / 1 1 U n parentesi i v e r s i t à d e notazione l l I n s u b r i a parentesi notazione parentesi notazione parentesi notazione..."artefatto"! un difetto di modelling: discrepanza fra realtà e modello 3D di rendering: discrepanza fra modello 3D e immagini renderizzate es: inventarsi un dettaglio che non c'era M a r c o parentesi T a r i n i C o notazione m p u t e r G r a parentesi p h I c s 2 0 notazione 1 0 / 1 1 U n parentesi i v e r s i t à d e notazione l l I n s u b r i a non si vede... perchè coperto da qualcos'altro (quasi) non si vede... perchè la sua proiezione è Backface Culling Concetto: superficie di oggetto chiuso... non vedro' mai l'interno cioè non vedrò mai il "dietro delle facce" Concetto BASE di questo corso Vettore normale ortogonale ad un piano o ad un un poligono detto anche "vettore" normale detto anche NORMALE (al/del piano) In pratica: normale == orientamento Nota: a rigore di termini, vettore normale = vettore con norma 1

3 Come si trova la normale di un triangolo? Come si trova la normale di un triangolo? Cioe' il suo orientamento nello spazio Traingolo front-facing v 2 view dir v 1 v 1 v 0 v 2 facile! é anche per questo che ci piacciono tanto i Traingolo back-facing "che ci dà le spalle" view dir v 2 v 0 v 0 v 1 (HW) Backface Culling: dove? (HW) Backface Culling: quanto? set- up set- up...ma solo da questo punto in poi! scarto circa il 50% delle facce... Lo speed-up? x2? (HW) Backface culling: quando? Non posso usarlo sempre! devo sapere a priori che l'oggetto è chiuso primitive qui occlusion culling ON / OFF stato di OpenGL tutto il pipeline HW di rendering (proiezione,, rasterizzazione...) s (HW) Backface culling: come? Accendere e spengere: glenable( GL_CULL_FACE ); gldisable( GL_CULL_FACE ); Tutti questi comandi cambiano solo lo stato. Quale sarà il default? "non fanno nulla sullo schermo" Quando è utile cambiarlo? Decidere se scartare le front o le back-facing : glcullface(gl_front ); glcullface(gl_back );

4 (HW) View-frustum culling Dato una primitiva triangolo, segmento, punto E' dentro il view frustum? (o parzialmente dentro conservativi!) Meglio fare il conto nelle Normalized Device Coords [-1,+1] x [-1,+1] x [-1,+1] (non a caso dette anche Clip Coords) z y x (HW) View-frustum Culling: dove? set- up Idea: farlo prima di mandare nel pipeline di rendering Dividere la scena in blocchi è nata già divisa nella maggior parte dei casi (v. scenegraph)...di nuovo, solo da questo punto in poi! Ma ora possiamo agire dall'inizio! Posso scartare moltissimo della scena! perché così sarà possibile scartare (=to cull ) interi blocchi alla volta! Problema: bisogna fare culling prima delle proiezioni come sono i piani? view frustum top plane : test di un singolo poligono Nelle coordinate oggetto o mondo! 6 test con 6 piani del view frustum! near plane right plane bottom plane far plane left plane Ripasso di geometria: i piani... vettori (nx,ny,nz,k)

5 Oltre al un poligono alla volta : bounding volumes bounding volume dell oggetto X = semplice forma che stima (per eccesso) il volume occupato da X Precomputato per ogni oggetto della scena Strumento molto utile in cg. Esempi di applicazione: collision detection (in games, bounding volumes detti anche hit-box) ray-tracing e, appunto, culling (view frustum, etc) bounding volumes Tipi di bounding volumes: Axis Aligned Bounding Box (A.A.B.B.) (generic) Bounding Box Discrete Oriented Polytope (D.O.P.) Bounding sphere Bouding ellipsoids (axis aligned or not) Bounding cylinders Difetti e pregi quanto sono onerosi da computare? quanto sono aderenti? sono robusti a rotazioni? consentono query (es.: di intersezione) semplici? esempio 1/3: gerarchia di bounding spheres esempio 2/3: intersezione sfera view frustum Sfera centro c raggio r Test con un piano p (con normale normalizzata) Facile! pc > r sfera tutta al di qua del piano pc < -r sfera tutta al di là del piano altrimenti: sfera mezza dentro e mezza fuori Test contro view frustum: testare tutti e 6 i piani esempio 3/3 : algoritmo finale Test effettuato con la Bounding sphere della cella se è TUTTA FUORI del VF CULL se è TUTTA DENTRO il VF, RENDER tutta la cella se è PARIALMENTE dentro il VF: Se siamo all ultimo livello: RENDER Altrimenti: Test sulle celle di livello inferiore

6 Occlusion Culling Una forma molto importante di culling Scarta moltissimi poligoni tutti quelli che compongono il "mondo" Ma dove attuarla? richiede info globali, su tutta la scena Cell-Based Occlusion-Culling (software) Idea base: Preprocessing: dividere il mondo in celle collegate da "portali" calcolare per ogni cella il "PVS PVS" di solito molto oneroso computazionalmente PVS = Potentially Visible Set cioe' la lista di celle che sono visiblili da quella cella Rendering: trova la cella x dove è l'occhio rendering solo delle celle nel PVS di x dentro il view frustum vediamo degli esempi Struttura: BSP-tree (Binary Spatial Partitioning tree) Obiettivo: circa stesso numero di primitive in ogni cella Quad-Tree (in 2D, o 2.5D es. campi d'altezza) Oct-Tree (in 3D partizione di un volume) stesso obiettivo il mondo il mondo (2D) Quad-Tree esempio frame buffer James Stewart, School of Computing, Queen's University, Kingston, Ontario mondo diviso con quad tree celle con bordo bianco sono nel view frustum ma non sono nel PVS: CULLED

Computer Graphics. Se non si vede, che non ci sia CULLING. Tipi di Culling. Notazione. Occlusion culling

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,

Dettagli

Intersezioni e collisioni

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

Dettagli

Tecniche per applicazioni interattive

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

Dettagli

Computer Graphics. v 1. Rasterizer: lines (segmenti) la rasterizzazione from vertex to pixels. Rasterizzazione: lines (segmenti)

Computer Graphics. v 1. Rasterizer: lines (segmenti) la rasterizzazione from vertex to pixels. Rasterizzazione: lines (segmenti) Computer Graphics Università dell Insubria Corso di Laurea in Informatica la rasterizzazione from vertex to pixels Rasterizer: lines (segmenti) Vertici (punti in R 3 ) computazioni per vertice Z Vertici

Dettagli

Grafica al calcolatore - Computer Graphics

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

Dettagli

Computer Graphics. Semitrasparenze: come? Un vecchio trucco di imaging 2D: Quando scrivo un colore nello screen buffer, invece di: eseguo:

Computer Graphics. Semitrasparenze: come? Un vecchio trucco di imaging 2D: Quando scrivo un colore nello screen buffer, invece di: eseguo: Computer Graphics Lezione 14: Università dell Insubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2008/09 Marco Tarini 14: alpha blending Un vecchio trucco di imaging

Dettagli

ma... Computer Graphics Rasterization-based HW-supported rendering Lezione 3: modellare con triangoli Tutto sia composto da triangoli (3D)

ma... Computer Graphics Rasterization-based HW-supported rendering Lezione 3: modellare con triangoli Tutto sia composto da triangoli (3D) Computer Graphics Leione 3: modellare con triangoli Università dell Insubria Facoltà di Sciene MFN di Varese Corso di Laurea in Informatica Anno Accademico 01/13 Rasteriation-based HW-supported rendering

Dettagli

Stadio di Applicazione

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

Dettagli

Grafica al calcolatore - Computer Graphics

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

Dettagli

Poligoni, Poliedri e Volumi

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)

Dettagli

Cenni al rendering di ombre

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

Dettagli

Grafica al calcolatore - Computer Graphics

Grafica al calcolatore - Computer Graphics Grafica al calcolatore - Computer Graphics 7 Pipeline di rasterizzazione 24/11/12 Grafica 2013 1 Rasterization pipeline Sappiamo implementare ray casting (o ray tracing). Abbiamo tuttavia già visto che

Dettagli

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. 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

Dettagli

Real-time rendering. Realtà Virtuale: il presente, il passato, time rendering il futuro

Real-time rendering. Realtà Virtuale: il presente, il passato, time rendering il futuro 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)

Dettagli

Real Time rendering Requisiti real-time richiedono basso carico poligonale sulla pipeline Metodi conservativi e non conservativi Tecniche di culling (

Real Time rendering Requisiti real-time richiedono basso carico poligonale sulla pipeline Metodi conservativi e non conservativi Tecniche di culling ( Real-time rendering Real Time rendering Requisiti real-time richiedono basso carico poligonale sulla pipeline Metodi conservativi e non conservativi Tecniche di culling (conservative) Tecniche di semplificazione

Dettagli

Cenni al rendering di ombre

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

Dettagli

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

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

Dettagli

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?

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

Dettagli

Grafica Computazionale

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

Dettagli

Grafica al calcolatore - Computer Graphics

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

Dettagli

Introduzione. Breve Introduzione agli indici spaziali. Tipiche operazioni. Es. Contenimento punto in rettangolo

Introduzione. Breve Introduzione agli indici spaziali. Tipiche operazioni. Es. Contenimento punto in rettangolo Introduzione Breve Introduzione agli indici spaziali Claudio Rocchini Istituto Geografico Militare Alcune operazioni geometriche di ricerca possono risultare particolarmente onerose da calcolare. er velocizzare

Dettagli

Grafica al calcolatore - Computer Graphics

Grafica al calcolatore - Computer Graphics Grafica al calcolatore - Computer Graphics 6 Pipeline di rasterizzazione 28/11/14 Grafica 2013 1 Rasterization pipeline Sappiamo implementare ray casting (o ray tracing). Abbiamo tuttavia già visto che

Dettagli

Grafica Computazionale

Grafica Computazionale Grafica Computazionale Laboratorio: Le trasformazioni Laboratorio: Il progetto SoftOgl: Software OpenGL Fabio Ganovelli fabio.ganovelli@isti.cnr.it a.a. 2005-2006 Obiettivi (oggi) le trasformazioni della

Dettagli

Grafica al Calcolatore Tecniche per applicazioni interattive - 1. Introduzione

Grafica al Calcolatore Tecniche per applicazioni interattive - 1. Introduzione Grafica al Calcolatore Tecniche per applicazioni interattive - 1 Introduzione Grafica al Calcolatore Tecniche per applicazioni interattive - 2 Rappresentazione della scena Grafica al Calcolatore Tecniche

Dettagli

L altra metà del motore fisico. Due tipi di collisione: one way: oggetti dinamici con oggetti statici two ways: oggetti dinamici con oggetti dinamici

L altra metà del motore fisico. Due tipi di collisione: one way: oggetti dinamici con oggetti statici two ways: oggetti dinamici con oggetti dinamici Collision handling! L altra metà del motore fisico Collision Handling: un ottimizzazione Distinzione a-priori fra: oggetti statici so che sono sempre fermi (vel = 0) «sfondo» influenzano gli altri oggetti,

Dettagli

richiedono basso carico poligonale sulla pipeline Metodi conservativi e non conservativi

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)

Dettagli

Grafica Computazionale

Grafica Computazionale Grafica Computazionale Ray-Tracing Fabio Ganovelli fabio.ganovelli@isti.cnr.it a.a. 2005-2006 Ray-Tracing e Rasterization Rendering in Computer Graphics Rasterization: Proiettare la scena sullo schermo

Dettagli

Costruzione di Interfacce

Costruzione di Interfacce Costruzione di Interfacce Scene dinamiche e Collision detection Fabio Ganovelli fabio.ganovelli@isti.cnr.it Scene dinamiche Scene in cui gli oggetti si possono muovere Molte applicazioni: chirurgia virtuale

Dettagli

Primitive 3D. Lo Z-Buffer. Informatica Grafica ][ Lo Z-Buffer. Lo Z-Buffer. Lo Z-Buffer. Lo Z-Buffer

Primitive 3D. Lo Z-Buffer. Informatica Grafica ][ Lo Z-Buffer. Lo Z-Buffer. Lo Z-Buffer. Lo Z-Buffer Informatica Grafica ][ Primitive 3D Fino ad ora abbiamo utilizzato solamente triangoli singoli. In questa lezione vedremo come disegnare primitive composte da piu' triangoli. Prima pero' dovremo attivare

Dettagli

Grafica al Calcolatore Fotorealismo - 1. Introduzione

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

Dettagli

ma... Computer Graphics Rasterization-based HW-supported rendering Lezione 3: modellare con triangoli Tutto sia composto da triangoli (3D)

ma... Computer Graphics Rasterization-based HW-supported rendering Lezione 3: modellare con triangoli Tutto sia composto da triangoli (3D) Computer Graphics Leione : modellare con triangoli Università dell Insubria Facoltà di Sciene MFN di Varese Corso di Laurea in Informatica Anno Accademico 011/1 Rasteriation-based HW-supported rendering

Dettagli

Grafica al calcolatore - Computer Graphics

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

Dettagli

Informatica Grafica. Gianluigi Ciocca, Simone Bianco F1801Q120

Informatica Grafica. Gianluigi Ciocca, Simone Bianco F1801Q120 Informatica Grafica Gianluigi Ciocca, Simone Bianco F1801Q120 Ray Tracing Lighting(10) Nel caso in cui l oggetto sia semi-trasparente bisogna considerare anche la luce che passa attraverso l oggetto Luce

Dettagli

Computer Graphics. Mesh import. Piano: Let s Import Meshes! Guardiamo dentro la nostra mesh con un plain text editor. 1. Procurarsi alcune mesh

Computer Graphics. Mesh import. Piano: Let s Import Meshes! Guardiamo dentro la nostra mesh con un plain text editor. 1. Procurarsi alcune mesh Computer Graphics Università dell Insubria Corso di Laurea in Informatica Anno Accademico 2014/15 Marco Tarini Let s Import Meshes! Mesh import Funzioni esistenti (non cambia nulla) Piano: 1. procurarsi

Dettagli

Le problematiche della grafica tridimensionale

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

Dettagli

Rendering 13/01/2014. Marco Tarini - Video Game Dev - Univ Insubria (recall?) Game Engine

Rendering 13/01/2014. Marco Tarini - Video Game Dev - Univ Insubria (recall?) Game Engine Rendering (recall?) Game Engine Parte del game che si occupa di alcuni dei task comuni Scena / livello Renderer Real time transofrm + lighting Models, materials Phsics engine (soft real-time) newtonian

Dettagli

Geometria Solida Costruttiva (CSG)

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

Dettagli

Computer Graphics LIGHTING. (local) Lighting in breve. lo Shading. Baked lighting VS dynamic lighting. Es: equazione di Lighting.

Computer Graphics LIGHTING. (local) Lighting in breve. lo Shading. Baked lighting VS dynamic lighting. Es: equazione di Lighting. Computer Graphics Lighting in breve Lezione : Università dell Insubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 20/2 Marco arini lo Shading Proprietà del materiale

Dettagli

Realtà Virtuale: il presente, il passato, il Shading futuro

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

Dettagli

Grafica Computazionale

Grafica Computazionale Grafica Computazionale Clipping e Hidden Surface Removal Fabio Ganovelli fabio.ganovelli@isti.cnr.it a.a. 2005-2006 2006 Diapositive a corredo del libro: Fondamenti di Grafica Tridimensionale Interattiva

Dettagli

Grafica al Calcolatore Rasterizzazione - 1. Introduzione

Grafica al Calcolatore Rasterizzazione - 1. Introduzione Grafica al Calcolatore Rasterizzazione - 1 Introduzione Grafica al Calcolatore Rasterizzazione - 2 Rasterizzazione Grafica al Calcolatore Rasterizzazione - 3 In sintesi, la rasterizzazione prende un singolo

Dettagli

Tecniche per applicazioni interattive

Tecniche per applicazioni interattive Tecniche per applicazioni interattive Dove si affronta il problema del rendering dalla parte della applicazione grafica interattiva. Introduzione Rappresentazione della scena Tecniche di abbattimento della

Dettagli

Corso di Grafica Computazionale

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

Dettagli

Computer Graphics. I 4 fattori che consideriamo. luce finale = lo Shading. ambient

Computer Graphics. I 4 fattori che consideriamo. luce finale = lo Shading. ambient Computer Graphics Lezione: Università dell Insubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2005/06 Marco Tarini lo Shading I 4 fattori che consideriamo luce finale

Dettagli

Introduzione al Real Time Shading

Introduzione al Real Time Shading Introduzione al Real Time Shading Ing. Davide Vercelli, PERCRO davide.vercelli@sssup.it Sommario dal software all'hardware e ritorno cenni storici la pipeline grafica com'era: la pipeline fissa com'è:

Dettagli

Lighting. Realtà Virtuale: il presente, il passato, Lighting e il Shading futuro

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

Dettagli

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

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

Dettagli

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

Computer Graphics. 188 MegaBytes / sec. Riassunto puntata precedente 1/3. Computer Graphics ( CG ): Lezione 2: hardware ergo triangoli Computer Graphics Lezione 2: hardware ergo triangoli Universit dell Insubria Facolt di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2005/06 Marco Tarini Riassunto puntata precedente

Dettagli

Corso Grafica Computazionale

Corso Grafica Computazionale Corso Grafica Computazionale Trasformazioni Geometriche Docente: Massimiliano Corsini Laurea Specialistica in Ing. Informatica Università degli Studi di Siena Trasformazioni Geometriche Le trasformazioni

Dettagli

Corso GraficaComputazionale

Corso GraficaComputazionale Corso GraficaComputazionale Trasformazioni Geometriche Docente: Massimiliano Corsini Laurea Specialistica in Ing. Informatica Università degli Studi di Siena Overview Trasformazioni geometriche e matrici

Dettagli

Corso di GraficaComputazionale Texturing

Corso di GraficaComputazionale Texturing Corso di GraficaComputazionale Texturing Docente: Massimiliano Corsini Laurea Specialistica in Ing. Informatica Università degli Studi di Siena Texturing Il concetto di texturing è importante Si tratta

Dettagli

Università di Pisa Laurea Specialistica in Tecnologie Informatiche. Corso di Realtà Virtuale A.A. 2008/2009. DomVR. Andrea Parrella

Università di Pisa Laurea Specialistica in Tecnologie Informatiche. Corso di Realtà Virtuale A.A. 2008/2009. DomVR. Andrea Parrella Università di Pisa Laurea Specialistica in Tecnologie Informatiche Corso di Realtà Virtuale A.A. 2008/2009 DomVR Andrea Parrella (yap@yapsoft.it) 1 Descrizione del progetto Controllo domotico di un abitazione

Dettagli

Fondamenti di Grafica Tridimensionale

Fondamenti di Grafica Tridimensionale Fondamenti di Grafica Tridimensionale La Pipeline Grafica Marco Di Benedetto marco.dibenedetto@isti.cnr.it Visualizzazione dell Informazione noi siamo qui Informazione mondo reale (es: scans) creazione

Dettagli

Corso di Grafica Computazionale

Corso di Grafica Computazionale Corso di Grafica Computazionale Rappresentazione di Oggetti Tridimensionali Docente: Massimiliano Corsini Laurea Specialistica in Ing. Informatica Università degli Studi di Siena Superfici di Suddivisione

Dettagli

Corso di Tecniche Avanzate per la Grafica Texturing

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

Dettagli

Rasterizzazione. Dove si introduce un metodo di rendering adatto alle applicazioni in real-time. Introduzione. Trasformazioni geometriche.

Rasterizzazione. Dove si introduce un metodo di rendering adatto alle applicazioni in real-time. Introduzione. Trasformazioni geometriche. Rasterizzazione Dove si introduce un metodo di rendering adatto alle applicazioni in real-time. Introduzione Trasformazioni geometriche Clipping Rimozione delle superfici nascoste Scan conversion Shading

Dettagli

Pipeline Rendering. Dove si introduce un metodo di rendering adatto alle applicazioni in real-time. Introduzione. Trasformazioni geometriche.

Pipeline Rendering. Dove si introduce un metodo di rendering adatto alle applicazioni in real-time. Introduzione. Trasformazioni geometriche. Pipeline Rendering Dove si introduce un metodo di rendering adatto alle applicazioni in real-time. Introduzione Trasformazioni geometriche Clipping Rimozione delle superfici nascoste Scan conversion Shading

Dettagli

di tecniche della modellazione digitale computer 3D A.A. 2010/2011 docente Arch. Emilio Di Gristina

di tecniche della modellazione digitale computer 3D A.A. 2010/2011 docente Arch. Emilio Di Gristina 03corso di tecniche della modellazione digitale computer 3D A.A. 2010/2011 docente Arch. Emilio Di Gristina i principali comandi di 3d studio max l interfaccia operativa pannello a schede crea qui si trovano

Dettagli

Grafica al Calcolatore Rendering volumetrico - 1. Introduzione

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

Dettagli

Grafica Computazionale

Grafica Computazionale Grafica Computazionale Rasterizzazione Fabio Ganovelli fabio.ganovelli@gmail.com a.a. 006-007 Dalle diapositive a corredo del libro: Fondamenti di Grafica Tridimensionale Interattiva 1 R. Scateni, P. Cignoni,

Dettagli

Computer Graphics. Memoria RAM nelle schede grafiche. Texture Mapping: paradigma di memoria. Concetto. Tessiture: Caso più comune.

Computer Graphics. Memoria RAM nelle schede grafiche. Texture Mapping: paradigma di memoria. Concetto. Tessiture: Caso più comune. Computer Graphics Memoria RAM nelle schede grafiche Lezione 3: Università dell Insubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 202/3 molti dettagli a poco prezzo:

Dettagli

Grafica 3D per i beni culturali: 3D and rendering

Grafica 3D per i beni culturali: 3D and rendering Grafica 3D per i beni culturali: 3D and rendering Lezione 2: 24 Febbraio 2011 Daniele Bernabei 1 Modeling/Acquisition e Rendering Modeling/Acquisition creazione di un modello digitale che rappresenti una

Dettagli

Perché il linguaggio C?

Perché il linguaggio C? Il linguaggio C 7 Perché il linguaggio C? Larga diffusione nel software applicativo Standard di fatto per lo sviluppo di software di sistema Visione a basso livello della memoria Capacità di manipolare

Dettagli

Tecnologie per la renderizzazione e la correzione di superfici trasparenti in grafica computerizzata

Tecnologie per la renderizzazione e la correzione di superfici trasparenti in grafica computerizzata POLITECNICO DI MILANO Corso di Laurea Specialistica in Ingegneria Informatica Dipartimento di Elettronica, Informazione e Bioingegneria Tecnologie per la renderizzazione e la correzione di superfici trasparenti

Dettagli

Fondamenti di Grafica Tridimensionale

Fondamenti di Grafica Tridimensionale Fondamenti di Grafica Tridimensionale La Pipeline Grafica Marco Di Benedetto marco.dibenedetto@isti.cnr.it Visualizzazione dell Informazione noi siamo qui Informazione mondo reale (es: 3D scans) creazione

Dettagli

Corso di Grafica Computazionale Texturing

Corso di Grafica Computazionale Texturing 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

Dettagli

Grafica Computazionale

Grafica Computazionale Grafica Computazionale La Pipeline Grafica Fabio Ganovelli fabio.ganovelli@gmail.com a.a. 2006-2007 noi siamo qui Informazione mondo reale (es: 3D scans) creazione (es: videogames) Calcolo (es: Sci-Vis)

Dettagli

RUOLO DELLA MODELLAZIONE GEOMETRICA PARTE IN QUESTA LEZIONE E LIVELLI DI MODELLAZIONE. Prof. Daniele Regazzoni

RUOLO DELLA MODELLAZIONE GEOMETRICA PARTE IN QUESTA LEZIONE E LIVELLI DI MODELLAZIONE. Prof. Daniele Regazzoni RUOLO DELLA MODELLAZIONE GEOMETRICA E LIVELLI DI MODELLAZIONE PARTE 2 Prof. Daniele Regazzoni... IN QUESTA LEZIONE Modelli 2D/3D Modelli 3D/3D Dimensione delle primitive di modellazione Dimensione dell

Dettagli

Corso di Geometria Ing. Informatica e Automatica Test 1: soluzioni

Corso di Geometria Ing. Informatica e Automatica Test 1: soluzioni Corso di Geometria Ing. Informatica e Automatica Test : soluzioni k Esercizio Data la matrice A = k dipendente dal parametro k, si consideri il k sistema lineare omogeneo AX =, con X = x x. Determinare

Dettagli

Corso di Grafica Computazionale

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

Dettagli

Corso di Grafica Computazionale

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

Dettagli

Computer Graphics. vector and point algebra. Rasterization based pipeline. Marco Tarini - Grafica computazionale. Lezione 3 1.

Computer Graphics. vector and point algebra. Rasterization based pipeline. Marco Tarini - Grafica computazionale. Lezione 3 1. Compter Graphics Leione 3: ector and point algebra Uniersità dell Insbria Corso di Larea in Informatica Anno Accademico 2015/16 Marco Tarini Rasteriation based pipeline pnti in R 3 per ertice Z proiettati

Dettagli

Progettazione e realizzazione di un editor grafico per il rendering di scene tridimensionali mediante OpenGL

Progettazione e realizzazione di un editor grafico per il rendering di scene tridimensionali mediante OpenGL ALMA MATER STUDIORUM - UNIVERSITÁ DI BOLOGNA CAMPUS DI CESENA SCUOLA DI SCIENZE CORSO DI LAUREA IN SCIENZE E TECNOLOGIE INFORMATICHE Progettazione e realizzazione di un editor grafico per il rendering

Dettagli

Game Dev Insubria 2014/ /10/2015. Funzione matematica prende punti 3D / vettori 3D restituisce punti 3D / vettori 3D

Game Dev Insubria 2014/ /10/2015. Funzione matematica prende punti 3D / vettori 3D restituisce punti 3D / vettori 3D Game Dev 2015/2016 Univ Insubria Scene composite: lo scene graph Marco Tarini Recap: trasformazioni spaziali Funzione matematica prende punti 3D / vettori 3D restituisce punti 3D / vettori 3D Es: traslazioni,

Dettagli

Processo di rendering

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

Dettagli

MERGE. 1 record geometrico. 1 record geometrico. 2 record geometrici. Il Merge serve per unire geometricamente due layers

MERGE. 1 record geometrico. 1 record geometrico. 2 record geometrici. Il Merge serve per unire geometricamente due layers MERGE A 1 record geometrico B 1 record geometrico C 2 record geometrici Il Merge serve per unire geometricamente due layers MERGE Buffer Quanti segmenti vengono usati per formare limiti curvilinei Dissolve

Dettagli

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

Rendering Locale. Rendering locale. Rendering locale. Rendering globale. Rendering globale Rendering Locale Costruzione di Interfacce Lezione 14 Rendering Locale e Globale cignoni@iei.pi.cnr.it http://vcg.iei.pi.cnr.it/~cignoni Il modello di rendering che abbiamo finora visto è detto locale

Dettagli

Testing black box di web service: sperimentazione su di un servizio senza stato

Testing black box di web service: sperimentazione su di un servizio senza stato tesi di laurea Anno Accademico 2005/2006 relatore Ch.mo prof. Porfirio Tramontana candidato Alfredo Monaco Matr. 534/001519 Obiettivi Risulta importante poter valutare se un web service abbia o non abbia

Dettagli

Prisma retto. Generatrice. Direttrice. Prisma obliquo. Nel caso le generatrici non siano parallele. Generatrice

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

Dettagli

Corso di Tecniche Avanzate per la Grafica

Corso di Tecniche Avanzate per la Grafica Corso di Tecniche Avanzate per la Grafica Algoritmi di Rendering di Base Docente: Massimiliano Corsini Laurea Specialistica in Informatica Università di Ferrara Overview Clipping Clipping di punti e segmenti

Dettagli

Geometria per la Computer Graphics 35

Geometria per la Computer Graphics 35 Contents Lecture 1. 1 Il sistema grafico 1 1.1. Grafica Raster 2 1.2. Spazi colorimetrici 3 1.3. Dispositivi di input grafico 4 1.4. Scanner 3D 4 1.5. Stampante 11 1.6. Raster Scan Display System 12 1.7.

Dettagli

Principali tipi di layout. Approfondimento sul box model

Principali tipi di layout. Approfondimento sul box model Principali tipi di layout. Approfondimento sul box model 1 Il layout stabilisce il modo in cui le varie parti (immagini, paragrafi, elenchi, intestazioni ) che compongono un documento ipertestuale devono

Dettagli

Stadio di Applicazione

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

Dettagli

Sempre piu difficile. Pallina che ruota sull anello. Doppio Anello. Rotolamento pallina 2. Rotolamento pallina 1. Aggiungiamo nell ordine

Sempre piu difficile. Pallina che ruota sull anello. Doppio Anello. Rotolamento pallina 2. Rotolamento pallina 1. Aggiungiamo nell ordine Sempre piu difficile Costruzione di Interfacce Lezione 9 Esercitazione Shading Aggiungiamo nell ordine L anello che e formato da una doppia striscia Una pallina che rotola sull anello L anello che ruota

Dettagli

Computer Graphics. La disciplina fornisce metodi per creare elaborare memorizzare visualizzare. immagini di oggetti o scene mediante un computer

Computer Graphics. La disciplina fornisce metodi per creare elaborare memorizzare visualizzare. immagini di oggetti o scene mediante un computer Computer Graphics La disciplina fornisce metodi per creare elaborare memorizzare visualizzare immagini di oggetti o scene mediante un computer Image Processing La disciplina fornisce metodi per acquisire

Dettagli

Corso di Grafica Computazionale

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

Dettagli

ELABORAZIONE DATI SU GRAPHIC PROCESSING UNIT

ELABORAZIONE DATI SU GRAPHIC PROCESSING UNIT UNIVERSITÀ DEGLI STUDI DI PADOVA DIPARTIMENTO DI INGEGNERIA DELL INFORMAZIONE TESI DI LAUREA ELABORAZIONE DATI SU GRAPHIC PROCESSING UNIT RELATORE: Ch.mo Prof. Gianfranco Bilardi LAUREANDO: Francesco De

Dettagli

Migliorare la performance. Scenario 1. Architettura Hw. Scenario 2. Scenario 3. Costruzione di Interfacce Lezione 23 Scene Graphs, Object Loading

Migliorare la performance. Scenario 1. Architettura Hw. Scenario 2. Scenario 3. Costruzione di Interfacce Lezione 23 Scene Graphs, Object Loading Migliorare la performance Costruzione di Interfacce Lezione 23, Object Loading cignoni@iei.pi.cnr.it http://vcg.iei.pi.cnr.it/~cignoni Se l obiettivo è l interattività è necessario riuscire a mantenere

Dettagli

Python moduli classi e qualche funzione grafica di base

Python moduli classi e qualche funzione grafica di base Python moduli classi e qualche funzione grafica di base Loriano Storchi loriano@storchi.org http:://www.storchi.org/ I moduli I moduli sono codice sorgente, quindi una collezione di dati, funzioni e classi

Dettagli

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A Pietro Frasca.

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A Pietro Frasca. Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 218-219 Pietro Frasca Lezione 17 Martedì 4-12-218 Memoria segmentata Nei sistemi che utilizzano la

Dettagli

Studio e realizzazione di moduli software per la visualizzazione e l archiviazione di modelli tridimensionali ad elevata complessità

Studio e realizzazione di moduli software per la visualizzazione e l archiviazione di modelli tridimensionali ad elevata complessità Università di Pisa Facoltà di Ingegneria Corso di Laurea Specialistica in Ingegneria Informatica Studio e realizzazione di moduli software per la visualizzazione e l archiviazione di modelli tridimensionali

Dettagli

I POLIGONI. DEFINIZIONE: un poligono è una parte limitata di piano definita da una linea chiusa, spezzata, non intrecciata.

I POLIGONI. DEFINIZIONE: un poligono è una parte limitata di piano definita da una linea chiusa, spezzata, non intrecciata. I POLIGONI COS È UN POLIGONO? DEFINIZIONE: un poligono è una parte limitata di piano definita da una linea chiusa, spezzata, non intrecciata. Un poligono è fatto di: - SEGMENTI detti LATI - ESTREMI DEI

Dettagli

Immagini digitali. Georges Seurat ( ),"Un dimanche ' été à l' Ile de la Grande Jatte"

Immagini digitali. Georges Seurat ( ),Un dimanche ' été à l' Ile de la Grande Jatte Immagini digitali Digitalizzazione o acquisizione di immagini del mondo reale (es. da una fotografia). Analogia con la scuola divisionista o puntinista Georges Seurat (1859-1891),"Un dimanche ' été à l'

Dettagli