Computer Graphics. Immagine sul Raster Display. Grafica 3D: analogia con fotocamera. La matrice di Pixel è memorizzata nel FRAME BUFFER

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Computer Graphics. Immagine sul Raster Display. Grafica 3D: analogia con fotocamera. La matrice di Pixel è memorizzata nel FRAME BUFFER"

Transcript

1 Computer Graphics Immagine sul Raster Display Il RASTER è costituito da più SCAN LINES Ogni Scan Line è formata da più PIXEL La matrice di Pixel è memorizzata nel FRAME BUFFER Grafica 3D: analogia con fotocamera Posta in un punto dello spazio (VIEWPOINT( VIEWPOINT) Realizza un immagine bidimensionale (FRAME( FRAME) dell ambiente 3D (SCENE( SCENE)

2 Grafica 3D Passi per un corretto scatto Specifica del tipo di proiezione (Ortografica o Prospettica) Specifica dei parametri di vista: coordinate del modello (object( coordinates,, in un Σobj posizione dell osservatore e del viewplane Clipping: specifica del VIEW VOLUME Proiezione sul VIEW PLANE e Visualizzazione sul VIEWPORT obj)

3 Grafica 3D Rendere finito il View Volume Introduzione di NEAR e FAR Plane

4 Perspective Transformation Per procedere al clipping possiamo ricorrere alla perspective transformation o normalization, che trasforma il viewfrustum nel Volume di Vista Canonico (CVV) top left top left right - right 1-1 bottom bottom adapted from F. Pfenning

5 Grafica 3D Analogia con camera Collocare camera e modello nello spazio Impostare il campo visivo (lente) La catena di trasformazioni La pipeline grafica

6 La pipeline di rendering Modello semplificato TRASFORMAZIONE Operazioni geometriche: si determinano le coordinate dei pixel ILLUMINAZIONE Operazioni cromatiche: si determina il colore dei pixel RASTERIZZAZIONE Operazioni bidimensionali: si elaborano i singoli pixel

7 La pipeline di rendering Modello realistico (GeForce( 3) interpolazione

8 La pipeline di rendering opengl reale

9 La pipeline di rendering Specifica dei dati di input Definizione di un vertice : glvertex () I vertici devono essere definiti dentro un blocco associato ad una determinata primitiva (mode( mode) geometrica : void glbegin (Glenum mode)...def di vertici (e normali) void glend (void) Possibili primitive : GL_POINTS (punti) GL_LINES, GL_LINE_STRIP, _LOOP (linee) GL_TRIANGLES, GL_TRIANGLE_STRIP, _FAN (triangoli) GL_QUADS, GL_QUAD_STRIP, GL_POLYGON (quadrati e poligoni) STRIP : Sfruttano il concetto di adiacenza. Associazione di un colore ad un vertice : glcolor () Modalità di colorazione : glpolygonmode (Glenum face, Glenum mode) GL_POINT, il poligono sarà disegnato con dei punti GL_LINE, il poligono sarà disegnato in modalità Wireframe GL_FILL, il poligono sarà disegnato in modalità Solid Associazione di una normale : glnormal ()

10 La pipeline di rendering Es. Specifica di un triangolo glpolygonmode (GL_FRONT, GL_FILL); glpolygonmode (GL_BACK, GL_LINE); glbegin (GL_TRIANGLES); glnormal (0.0,0.0,1.0); glcolor (1.0,1.0,0.0); glvertex (0.0,0.0,0.0); glvertex (1.0,0.0,0.0); glvertex (0.0,1.0,0.0); glend (); z y y GL_FRONT x GL_BACK z x

11 Stadio di Trasformazione TRASFORMATION Mesh e primitive Le coordinate omogenee Trasformazioni di Modelviewing Trasformazioni di Proiezione (dal volume di vista al cubo unitario) Trasformazioni di Viewport

12 Stadio di Trasformazione Concetto di Matrice Corrente che identifica una delle tre matrici relative alle trasformazioni (GL_MODELVIEW, GL_PROJECTION, GL_TEXTURE): glmatrixmode () Altre funzioni generalmente riferite alle operazioni su queste matrici: glmultmatrix () glloadmatrix () glpushmatrix () glloadidentity () glpopmatrix () Viewing Trasformation: glulookat () Modeling Trasformation : gltranslate () Traslazione : gltranslate Scalatura : glscale () Rotazione: glrotate ()

13 Stadio di Trasformazione Projection Trasformation. Prospettica : glfrustum (left, right, bottom,top, near, far); gluperspective (fovy, aspect, near, far) (cambia la modalità di definizione del volume di vista) Ortografica : glortho (left, right, bottom, top, near, far ) Viewport Trasformation. glviewport (x, y, width, height)

14 Stadio di Illuminazione LIGHTING Modello di PHONG Diffuse, Specular, Ambient Sorgenti luminose e materiali Per ogni primitiva deve essere specificato un materiale, i cui parametri possono essere applicati uniformemente alla superficie della primitiva, o modulati da una tessitura (texture).

15 Stadio di Illuminazione In OpenGL possono esistere fino a 8 sorgenti di luci. Le loro proprietp roprietà si specificano con: gllight (Glenum light, Glenum pname,, TYPE param) Componenti: GL_AMBIENT,, componente ambientale GL_DIFFUSE, componente diffusa GL_SPECULAR,, componente speculare GL_POSITION, con cui all infinito) Fattori di Attenuazione : GL_CONSTANT_ATTENUATION, GL_LINEAR_ATTENUATION, GL_QUADRATIC_ATTENUATION con cui è possibile impostare la posizione o creare una luce direzionale (posizionata SpotLight: una luce posizionale per default emana luce in tutte le direzioni. E E possibile però restringere la sua produzione di luce con un cono di illuminazione GL_SPOT_CUTOFF, angolo del cono ([0.0, 90.0]) GL_SPOT_EXPONENT, focalizzazione della luce GL_SPOT_DIRECTION, direzione della luce glenable (light) Per abilitare una luce : glenable (light) Per abilitare l illuminazionel : glenable (GL_LIGHTING ).

16 Stadio di Illuminazione Impostazione dei Materiali: glmaterial (face, pname, param) GL_AMBIENT,, componente ambientale GL_DIFFUSE, componente diffusa GL_SPECULAR,, componente speculare GL_EMISSIVE,, componente emissiva Modalità di Shading : glshademodel (mode) mode può assumere i valori : - GL_FLAT (per avere una modalità Flat) - GL_SMOOTH (per avere una modalità Gouraud).

17 Stadio di Clipping etc. Clipping: glclipplane (GL_CLIP_PLANEi, equation) Specifica piani addizionali di clipping. Back Face Culling: glcullface (mode) GL_FRONT, GL_BACK Specifica la modalità di taglio dei poligoni a seconda del loro orientamento

18 Stadio di Rasterizzazione RASTERIZZAZIONE Texture mapping: Texture: : matrice di texel contenenti dati relativi al colore L immagine 2D viene mappata sulle primitive del modello 3D La texture condivide con le primitive tutte le trasformazioni su di esse compiute + = Z-buffering Alpha Blending

19 Stadio di Rasterizzazione Le fasi per creare un oggetto Texture sono le seguenti : Fase 1: Creazione di un nome univoco di Texture. glgentextures (NumNomi, * texturenames) Fase 2: Creazione un oggetto Texture e associzione ( bind ) di un nome glbindtextures (GL_TEXTURE_2D, texturename) glbindtextures Fase 3: Associazione di una immagine all oggetto Texture. glteximage2d ( ) Fase 4: Impostazione dell ambiente texture GL_ADD gltexenv (GL_TEXTURE_ENV, GL_TEXTURE_ENV _MODE, param). Fase 5: Impostazione dei Filtri di Texture (magnification, minification) gltexparameter (GL_TEXTURE_2D, tipofiltro, valore) Impostazione della modalità (param) di uso del colore di Texture. ColoreSuperficieFinale = GL_REPLACE GL_MODULATE -> Tex -> Tex x ColSup. -> Tex + ColSup Le fasi di utilizzo di un oggetto Texture sono : Fase 1. Attivazione del Texture Mapping glenable (GL_TEXTURE_2D) Fase 2. Associare le coordinate di texture ad un vertice attraverso il comando : gltexcoord (u,v)

20 Altre funzioni OpenGL BUFFER Depth: gldepthmask gldepthfunc glpolygonoffset glblendfunc Color: glclearcolor glcolormask gldrawbuffer General: glclear Stencil: glstencilfunc glstencilop glstencilmask glscissor DATA STORING/RETRIEVAL General: glgetfloatv glgetstring Attributes: glpopattrib glpushattrib Transformation: gluproject gluunproject Frame buffer: glcopytexsubimage2d glcopyteximage2d glreadpixels DISPLAY LIST glnewlist glgenlists glcalllist glendlist

Computer Graphics. Realtà Virtuale: il presente, il passato, 3D il Graphics futuro

Computer Graphics. Realtà Virtuale: il presente, il passato, 3D il Graphics futuro Computer Graphics Immagine sul Raster Display Il RASTER è costituito da più SCAN LINES Ogni Scan Line è formata da più PIXEL La matrice di Pixel è memorizzata nel FRAME BUFFER Un unico frame buffer porterebbe

Dettagli

INFORMATICA GRAFICA. 28 Aprile Trasformazioni - Illuminazione. Michele Antolini

INFORMATICA GRAFICA. 28 Aprile Trasformazioni - Illuminazione. Michele Antolini Knowledge Aided Engineering Manufacturing and Related Technologies INFORMATICA GRAFICA 28 Aprile Trasformazioni - Illuminazione michele.antolini@mail.polimi.it Trasformazioni Durante il ridisegno della

Dettagli

INFORMATICA GRAFICA!

INFORMATICA GRAFICA! Knowledge Aided Engineering Manufacturing and Related Technologies INFORMATICA GRAFICA! 7 Aprile! Trasformazioni - Illuminazione! Michele Antolini michele.antolini@mail.polimi.it! TRASFORMAZIONI! Trasformazioni!

Dettagli

INFORMATICA GRAFICA. 4 Maggio Trasformazioni - Illuminazione. Michele Antolini

INFORMATICA GRAFICA. 4 Maggio Trasformazioni - Illuminazione. Michele Antolini Knowledge Aided Engineering Manufacturing and Related Technologies INFORMATICA GRAFICA 4 Maggio Trasformazioni - Illuminazione Michele Antolini michele.antolini@mail.polimi.it TRASFORMAZIONI Trasformazioni

Dettagli

LIGHTING INTRODUZIONE DRAWING EVENT MANAGEMENT VIEWING DOUBLE BUFFERING Z-BUFFERING LIGHTING

LIGHTING INTRODUZIONE DRAWING EVENT MANAGEMENT VIEWING DOUBLE BUFFERING Z-BUFFERING LIGHTING LIGHTING INTRODUZIONE DRAWING EVENT MANAGEMENT VIEWING DOUBLE BUFFERING Z-BUFFERING LIGHTING e` una approssimazione del comportamento della luce nel mondo reale permette di visualizzare la scena in modo

Dettagli

Corso di GraficaComputazionale

Corso di GraficaComputazionale Corso di GraficaComputazionale OpenGL Docente: Massimiliano Corsini Laurea Specialistica in Informatica Università degli Studi di Siena Introduzione Open Graphics Language Libreria C Cross-platform Qualche

Dettagli

Corso di Grafica Computazionale

Corso di Grafica Computazionale Corso di Grafica Computazionale OpenGL Docente: Massimiliano Corsini Laurea Specialistica in Informatica Università degli Studi di Siena Introduzione Open Graphics Language Libreria C Cross-platform Qualche

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

INFORMATICA GRAFICA. 27 Aprile Introduzione a OpenGL parte 2. Michele Antolini

INFORMATICA GRAFICA. 27 Aprile Introduzione a OpenGL parte 2. Michele Antolini Knowledge Aided Engineering Manufacturing and Related Technologies INFORMATICA GRAFICA 27 Aprile Introduzione a OpenGL parte 2 michele.antolini@mail.polimi.it COMANDI FONDAMENTALI OpenGL - comandi Nel

Dettagli

DOUBLE BUFFERING. serve a nascondere la fase di drawing utilizzato soprattutto nelle animazioni INTRODUZIONE DRAWING EVENT MANAGEMENT VIEWING

DOUBLE BUFFERING. serve a nascondere la fase di drawing utilizzato soprattutto nelle animazioni INTRODUZIONE DRAWING EVENT MANAGEMENT VIEWING DOUBLE BUFFERING INTRODUZIONE DRAWING EVENT MANAGEMENT VIEWING DOUBLE BUFFERING Z-BUFFERING LIGHTING serve a nascondere la fase di drawing utilizzato soprattutto nelle animazioni back buffer front buffer

Dettagli

Grafica Computazionale

Grafica Computazionale Grafica Computazionale Lab: Lighting &Shading Fabio Ganovelli fabio.ganovelli@gmail.com a.a. 2006-2007 Lighting in OpenGl Diciamo a OpenGL di usare il lighting: glenable(gl_lighting) // da qui in poi glcolorxx

Dettagli

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

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

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

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

INFORMATICA GRAFICA. 12 Maggio Display lists, blending, fog. Michele Antolini

INFORMATICA GRAFICA. 12 Maggio Display lists, blending, fog. Michele Antolini Knowledge Aided Engineering Manufacturing and Related Technologies INFORMATICA GRAFICA 12 Maggio Display lists, blending, fog michele.antolini@mail.polimi.it BLENDING Blending Il blending (letteralmente

Dettagli

UNIVERSITÀ DEGLI STUDI DI PAVIA Facoltà di Ingegneria Dipartimento di Ingegneria Industriale e dell Informazione

UNIVERSITÀ DEGLI STUDI DI PAVIA Facoltà di Ingegneria Dipartimento di Ingegneria Industriale e dell Informazione UNIVERSITÀ DEGLI STUDI DI PAVIA Facoltà di Ingegneria Dipartimento di Ingegneria Industriale e dell Informazione Corso di Laurea in Ingegneria Informatica TITOLO OpenGL Once-for-All : una soluzione alla

Dettagli

Introduzione SOMMARIO

Introduzione SOMMARIO SOMMARIO Introduzione alle librerie grafiche e a OpenGL Implementazioni hw e sw e supporto multipiattaforma Esempi di programma con OpenGL Sistemi di coordinate 2D e 3D Proiezioni Primitive 3D Pipeline

Dettagli

INFORMATICA GRAFICA. 20 Aprile Introduzione a OpenGL. Michele Antolini michele.antolini@mail.polimi.it

INFORMATICA GRAFICA. 20 Aprile Introduzione a OpenGL. Michele Antolini michele.antolini@mail.polimi.it Knowledge Aided Engineering Manufacturing and Related Technologies INFORMATICA GRAFICA 20 Aprile Introduzione a OpenGL michele.antolini@mail.polimi.it Computer graphics I programmi di grafica (non solo

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

OpenGL: visualizzazione 3D

OpenGL: visualizzazione 3D OpenGL: visualizzazione 3D La visualizzazione di una scena avviene come se si stesse usando una macchina fotografica per la quale si può controllare la posizione nello spazio 3D; si può cambiare il tipo

Dettagli

Computer Graphics. I 4 fattori che consideriamo. luce finale = lo Shading. ambient. + riflessione diffusa + riflessione speculare + emissione

Computer Graphics. I 4 fattori che consideriamo. luce finale = lo Shading. ambient. + riflessione diffusa + riflessione speculare + emissione Computer Graphics Lezione : Università dell Insubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2008/09 Marco Tarini lo Shading I 4 fattori che consideriamo luce finale

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

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

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

RIEPILOGO DRAWING INTRODUZIONE DRAWING EVENT MANAGEMENT VIEWING DOUBLE BUFFERING Z-BUFFERING LIGHTING

RIEPILOGO DRAWING INTRODUZIONE DRAWING EVENT MANAGEMENT VIEWING DOUBLE BUFFERING Z-BUFFERING LIGHTING RIEPILOGO INTRODUZIONE DRAWING EVENT MANAGEMENT VIEWING DOUBLE BUFFERING Z-BUFFERING LIGHTING DRAWING creare una finestra inizializzare i buffer gestire il colore in modalita` indicizzata in modalita`

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

Grafica Computazionale

Grafica Computazionale Grafica Computazionale OpenGl + SDL Fabio Ganovelli fabio.ganovelli@isti.cnr.it a.a. 2005-2006 Storia Specifica di libreria per la scrittura di applicazioni di grafica 3D Cross-Language Cross-Platform

Dettagli

Grafica al Calcolatore Tecniche di mappatura - 1. Introduzione

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

Dettagli

INFORMATICA GRAFICA!

INFORMATICA GRAFICA! Knowledge Aided Engineering Manufacturing and Related Technologies INFORMATICA GRAFICA! 18 Maggio! Vertex array, VBO, Display lists! Michele Antolini michele.antolini@mail.polimi.it! Prestazioni! Abbiamo

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

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

Grafica Computazionale. Texturing. Fabio Ganovelli a.a

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

Dettagli

Grafica al calcolatore - Computer Graphics

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

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

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

Dettagli

INFORMATICA GRAFICA. 25 Marzo Introduzione a OpenGL. Michele Antolini

INFORMATICA GRAFICA. 25 Marzo Introduzione a OpenGL. Michele Antolini Knowledge Aided Engineering Manufacturing and Related Technologies INFORMATICA GRAFICA 25 Marzo Introduzione a OpenGL michele.antolini@mail.polimi.it Computer graphics I programmi di grafica (non solo

Dettagli

Corso di programmazione videogiochi 3 D con C++, OpenGL e Irrlicht. Alessandro Bugatti ITIS B. Castelli

Corso di programmazione videogiochi 3 D con C++, OpenGL e Irrlicht. Alessandro Bugatti ITIS B. Castelli Corso di programmazione videogiochi 3 D con C++, OpenGL e Irrlicht La programmazione dei videogiochi Contesto di programmazione molto specializzato e complesso Ricco di sfide informatiche (gestione memoriaprestazioni,

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

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

Grafica al calcolatore - Computer Graphics

Grafica al calcolatore - Computer Graphics Grafica al calcolatore - Computer Graphics 8 Pipeline di rasterizzazione - 2 24/11/12 Grafica 2013 1 Riepilogo Operazioni geometriche Pixel processing 24/11/12 Grafica 2013 2 Rasterizzazione/scan connversion

Dettagli

Skeleton SDL. Skeleton SDL. Obiettivo. Aggiungiamo un cubo. DrawBlock. Costruzione di Interfacce Lezione 9 Esercitazione Trasformazioni

Skeleton SDL. Skeleton SDL. Obiettivo. Aggiungiamo un cubo. DrawBlock. Costruzione di Interfacce Lezione 9 Esercitazione Trasformazioni Skeleton SDL Costruzione di Interfacce Lezione 9 Esercitazione Trasformazioni cignoni@isti.cnr.it http://vcg.isti.cnr.it/~cignoni #ifdef WIN32 #define WIN32_LEAN_AND_MEAN #include #endif #include

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

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

Colori e Illuminazione

Colori e Illuminazione Colori e Illuminazione Sintesi dei Colori Per sintesi dei colori si intende un qualunque processo in grado di riprodurre una gamma croma7ca più o meno estesa a par7re da un certo numero di s7moli luminosi,

Dettagli

Introduzione. Costruzione di Interfacce Primi passi in OpenGL. Sierpinski Gasket. Sierpinski gasket. Event driven programming. Stuttura del programma

Introduzione. Costruzione di Interfacce Primi passi in OpenGL. Sierpinski Gasket. Sierpinski gasket. Event driven programming. Stuttura del programma Introduzione Costruzione di Interfacce Primi passi in OpenGL cignoni@iei.pi.cnr.it http://vcg.iei.pi.cnr.it/~cignoni Abbiamo visto Cosa significa rendering L approccio object viewer Mettiamo in pratica

Dettagli

Texture Mapping. Texture Mapping. Coordinate di texture. Esempi. Coordinate Texture

Texture Mapping. Texture Mapping. Coordinate di texture. Esempi. Coordinate Texture Texture Mapping Cotruzione di Interfacce Lezione 22 Texturing cignoni@iei.pi.cnr.it http://vcg.iei.pi.cnr.it/~cignoni Data un immagine bidimenionale (ad e. una foto) viene ritagliata, tirata o comprea

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 Computazionale

Grafica Computazionale Grafica Computazionale Laboratorio Fabio Ganovelli fabio.ganovelli@gmail.com a.a. 2006-2007 Credits: Marco Tarini CVS Concurrent Versioning System Client per windows www.tortoisecvs.org. gc07 gc07 Qui

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

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

Informatica Grafica. (III anno Laurea Triennale e I anno Laurea Magistrale del Corso di Laurea in Informatica) Donato D Ambrosio

Informatica Grafica. (III anno Laurea Triennale e I anno Laurea Magistrale del Corso di Laurea in Informatica) Donato D Ambrosio Informatica Grafica (III anno Laurea Triennale e I anno Laurea Magistrale del Corso di Laurea in Informatica) Donato D Ambrosio Dipartimento di Matematica e Centro d Eccellenza per il Calcolo ad Alte Prestazioni

Dettagli

Grafica al calcolatore Computer Graphics

Grafica al calcolatore Computer Graphics Grafica al calcolatore Computer Graphics 8 Pipeline di rasterizzazione - 2 1 Pipeline grafica Operazioni geometriche Pixel processing 2 Rasterizzazione/scan connversion Con il termine rasterizzazione si

Dettagli

Corso di grafica 3D con C++ e OpenGL. Alessandro Bugatti ITIS B. Castelli

Corso di grafica 3D con C++ e OpenGL. Alessandro Bugatti ITIS B. Castelli Corso di grafica 3D con C++ e OpenGL Utilizzo di quadriche Una quadrica in 3D è ogni superficie rappresentata da un'equazione polinomiale del secondo ordine nelle variabili spaziali (coordinate). Esempi

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

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

Il texture fetch (o: texture lookup) Operazione molto semplice in GLSL, es: e si memorizza le coord texture (s,t) per ogni vertice

Il texture fetch (o: texture lookup) Operazione molto semplice in GLSL, es: e si memorizza le coord texture (s,t) per ogni vertice e si memorizza le coord texture (s,t) per ogni vertice Index Buffer Verex Buffer s 0 t 0 s t s t coord texture per ogni vertice Vertici in obj. space + attributi s t vertex shader pass down di ( s, t )

Dettagli

Modelli per i materiali

Modelli per i materiali Texture mapping 1 Modelli per i materiali Il realismo visivo può essere ottenuto mediante i modelli di illuminazione e dei materiali Per modellare i materiali si possono utilizzare delle immagini dette

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

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

Videogame e rendering 3D. Enrico Colombini (Erix) µhackademy 1 Marzo 2019

Videogame e rendering 3D. Enrico Colombini (Erix) µhackademy 1 Marzo 2019 Videogame e rendering 3D Enrico Colombini (Erix) µhackademy 1 Marzo 2019 Volete creare un videogame? Strumenti comodi: game engine Editor 3D, componenti Runtime engine (PC, console, mobile) Scripting,

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

Introduzione. Costruzione di Interfacce Primi passi in OpenGL. Sierpinski Gasket. Sierpinski gasket. Event driven programming. Stuttura del programma

Introduzione. Costruzione di Interfacce Primi passi in OpenGL. Sierpinski Gasket. Sierpinski gasket. Event driven programming. Stuttura del programma Introduzione Costruzione di Interfacce Primi passi in OpenGL cignoni@iei.pi.cnr.it http://vcg.iei.pi.cnr.it/~cignoni Abbiamo visto Cosa significa rendering L approccio object viewer Mettiamo in pratica

Dettagli

Modellazione poligonale in Maya

Modellazione poligonale in Maya Informatica Grafica ][ Modellazione poligonale in Maya La tecnica di modellazione poligonale permette di costruire oggetti tridimensionali basati su poligoni. Malgrado gli oggetti poligonali siano spigolosi

Dettagli

Grafica al calcolatore Computer Graphics

Grafica al calcolatore Computer Graphics Grafica al calcolatore Computer Graphics 9 Tecniche di Mapping 1 Introduzione Il modello di illuminazione di Phong è abbastanza versatile: con una scelta opportuna dei vari parametri si possono imitare

Dettagli

Introduzione. Costruzione di Interfacce Primi passi in OpenGL. Sierpinski Gasket. Sierpinski gasket. Event driven programming. Stuttura del programma

Introduzione. Costruzione di Interfacce Primi passi in OpenGL. Sierpinski Gasket. Sierpinski gasket. Event driven programming. Stuttura del programma Introduzione Costruzione di Interfacce Primi passi in OpenGL cignoni@iei.pi.cnr.it http://vcg.iei.pi.cnr.it/~cignoni Abbiamo visto Cosa significa rendering L approccio object viewer Mettiamo in pratica

Dettagli

Corso di Tecniche Avanzate per la Grafica

Corso di Tecniche Avanzate per la Grafica Corso di Tecniche Avanzate per la Grafica GLSL Docente: Massimiliano Corsini Laurea Specialistica in Informatica Università di Ferrara Cosa sono gli shaders? Gli shaders sono programmi che vengono eseguiti

Dettagli

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

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,

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

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

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

Scuola Politecnica - DICGIM ANNO ACCADEMICO CORSO DI LAUREA MAGISTRALE Ingegneria Informatica INSEGNAMENTO STRUTTURA Scuola Politecnica - DICGIM ANNO ACCADEMICO 2014-2015 CORSO DI LAUREA MAGISTRALE Ingegneria Informatica INSEGNAMENTO Informatica Grafica TIPO DI ATTIVITÀ Caratterizzante AMBITO DISCIPLINARE Ingegneria

Dettagli

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

Dettagli

INFORMATICA GRAFICA!

INFORMATICA GRAFICA! Knowledge Aided Engineering Manufacturing and Related Technologies INFORMATICA GRAFICA! 11 Maggio! Interattività! Michele Antolini michele.antolini@mail.polimi.it! Input! Libreria glut! interfaccia con

Dettagli

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

A Steroid Seconda Versione. A Steroid V0.2. Poligoni in OpenGL. Rappresentazione Superfici. Poligoni in OpenGL. Triangle Strip

A Steroid Seconda Versione. A Steroid V0.2. Poligoni in OpenGL. Rappresentazione Superfici. Poligoni in OpenGL. Triangle Strip A Steroid V0.2 Paolo Cignoni cignoni@iei.pi.cnr.it http://vcg.iei.pi.cnr.it/~cignoni A Steroid Seconda Versione Da 2D a 3D uove Classi per memorizzare, caricare, visualizzare una mesh di triangoli Classe

Dettagli

BLENDER LEZIONI DI LABORATORIO

BLENDER LEZIONI DI LABORATORIO BLENDER LEZIONI DI LABORATORIO Lezione 2 http://www.onlinetutorial.it/2019/creiamoun-bicchiere-con-blender.html Luci e ombre L illuminazione Nel rendering l illuminazione è fondamentale per dare realismo

Dettagli

INFORMATICA GRAFICA. 19 Maggio Texture. Michele Antolini

INFORMATICA GRAFICA. 19 Maggio Texture. Michele Antolini Knowledge Aided Engineering Manufacturing and Related Technologies INFORMATICA GRAFICA 19 Maggio Texture michele.antolini@mail.polimi.it Texture Tessitura si può considerare come il vestito dei nostri

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

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

Corso di Grafica Computazionale

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

Dettagli

Corso di Tecniche Avanzate per la Grafica Lighting

Corso di Tecniche Avanzate per la Grafica Lighting Corso di Tecniche Avanzate per la Grafica Lighting Docente: Massimiliano Corsini Laurea Specialistica in Informatica Università di Ferrara Interazione Luce-Materia 2 Interazione luce-materia Cosa succede

Dettagli

Texture Mapping. Texture Mapping. Coordinate di texture. Esempi. Coordinate Texture

Texture Mapping. Texture Mapping. Coordinate di texture. Esempi. Coordinate Texture Texture Mapping Cotruzione di Interfacce Lezione 9 Texturing cignoni@iei.pi.cnr.it http://vcg.iei.pi.cnr.it/~cignoni Data un immagine bidimenionale (ad e. una immagine fotografica cannerizzata) viene ritagliata,

Dettagli

Informatica Grafica. (III anno Laurea Triennale - Corso di Laurea in Informatica) Donato D Ambrosio

Informatica Grafica. (III anno Laurea Triennale - Corso di Laurea in Informatica) Donato D Ambrosio Informatica Grafica (III anno Laurea Triennale - Corso di Laurea in Informatica) Donato D Ambrosio Dipartimento di Matematica e Centro d Eccellenza per il Calcolo ad Alte Prestazioni Cubo 22B, Università

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

Introduzione alla Computer Graphics

Introduzione alla Computer Graphics Introduzione alla Computer Graphics Informatica Grafica CdLS a ciclo unico in Ingegneria Edile-Architettura a.a. 2008/09 Computer Graphics e Image Processing Image processing Insieme di teorie ed algoritmi

Dettagli

Corso di GraficaComputazionale Lighting

Corso di GraficaComputazionale Lighting Corso di GraficaComputazionale Lighting Docente: Massimiliano Corsini Laurea Specialistica in Ing. Informatica Università degli Studi di Siena Interazione Luce-Materia 2 Interazione luce-materia Cosa succede

Dettagli

LA STRUTTURA NARRATIVA. Prof. M.A. Alberti, A. Berolo, P. Pasteris

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

Dettagli

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

1.1 Modello di un Processo di Rendering. Gestore delle Geometrie (Ricostruzione delle Geoemtrie e Clipping) Capitolo 1 Esercizi sulla Pipeline di Rendering 1.1 Modello di un Processo di Rendering Componenti dell Architettura di Rendering: Processore Bus di Comunicazione Scheda Grafica Moduli della Pipeline di

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

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

Informatica Grafica. Prof. Massimiliano Dellisanti Fabiano Vilardi. (2a parte) a.a. 2011/2012

Informatica Grafica. Prof. Massimiliano Dellisanti Fabiano Vilardi. (2a parte) a.a. 2011/2012 Informatica Grafica (2a parte) a.a. 2011/2012 Prof. Massimiliano Dellisanti Fabiano Vilardi 1 Grafica 3D Con Grafica 3D si indicano quelle tecniche informatiche finalizzate alla descrizione (e rappresentazione

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