Costruzione di interfacce Paolo Cignoni

Slides:



Advertisements
Presentazioni simili
Relighting everything Real Time relighting..... Luminosita e contrasto? Aumentare la luminosita di una immagine non vuol dire assolutamente reilluminare!
Advertisements

GUIs, the user’s perspective
Ombre e riflessioni in tempo reale
Interazione Uomo - Macchina
Contenuti Multimedia e tecnologia digitale
Corso di Interazione Uomo-Macchina: Grafica (a.a ) Docente: Prof. Enrico Puppo Prerequisiti: –Interazione uomo-macchina: interfacce grafiche.
Informatica giuridica Hardware e software: glossario Lucio Maggio Anno Accademico 2000/2001.
Progettare un Motore 3D Marco Trivellato
Introduzione allinformatica. Cosè linformatica ? Scienza della rappresentazione e dellelaborazione dellinformazione ovvero Studio degli algoritmi che.
[Iriad Kumbuli] OpenGL Framebuffer
Sistemi Multimediali II Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2004/05 Lezione.
Costruzione di Interfacce Lezione 4 Sistemi di riferimento e trasformazioni
Computer Graphics Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2005/06 prove generali.
Costruzione di Interfacce Lezione 5 Trasformazioni Affini
Costruzione di Interfacce Lezione 4 Nozioni di geometria per la grafica
Costruzione di Interfacce Lezione 4 Geometria per la grafica
Computer Graphics Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2006/07 Lezione.
Matrici di Proiezione Prospettica
Costruzione di Interfacce Lezione 5 Trasformazioni Affini
Sistemi Multimediali II Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2004/05 Lezione.
Computer Graphics Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2004/05 Lezione.
Costruzione di Interfacce - Paolo Cignoni1 Costruzione di Interfacce Lezione 30 MMeditor e collision detection
1 Costruzione di Interfacce Primi passi in OpenGL
2 Dicembre 2002Costruzione di Interfacce - Paolo Cignoni1 Costruzione di Interfacce Lezione 23 Scene Graphs, Object Loading
Costruzione di Interfacce Lezione 8 Rasterizzazione
1 Rendering spaziale sonoro mediante ricostruzione stereo Università degli studi di Verona Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica.
Lente di ingrandimento
Applicazioni progettuali di grafica computerizzata a.a. 2008/2009 Rendering grafico.
Struttura dei sistemi operativi (panoramica)
Progettazione dei Sistemi Interattivi (a.a. 2004/05) - Lezione 91 Il modello OAI (Object-Action Interface) Sintassi e semantica: la sintassi specifica.
Introduzione alla grafica digitale 2005,6,7,8,9,.. Matjaž Hmeljak.
Elaborazione (digitale) delle immagini
1 Informatica Grafica Daniele Marini. 2 Informazioni generali Corso in teledidattica: –Videoconferenza –Learning community Frequentare le lezioni! Cercare.
COMPUTER GRAPHIC. La computer graphic si occupa della creazione o manipolazione di immagini digitali. Le immagini digitali possono essere di due tipi:
Ist. Comprensivo “Leonetti Senior”
Le proiezioni e la prospettiva
Matematica della visione
Daniele Marini Con contributi di Maurizio Rossi
Architettura di OGL e pipe-line Daniele Marini Corso Di Programmazione Grafica.
Le proiezioni e la prospettiva
Le proiezioni e la prospettiva
Programmazione grafica 1
Superfici nascoste Daniele Marini.
Informatica Grafica sez. A-G
1 Struttura di un sistema grafico e frame buffer Daniele Marini.
Software Insieme dei programmi residenti nella memoria del computer o nei supporti di memorizzazione Modulo 1.
Controllare le proiezioni
Corso di Programmazione Grafica e Laboratorio Daniele Marini
Corso di Programmazione Grafica e Laboratorio Introduzione a OpenGL Prof. Daniele Marini.
Corso di Programmazione Grafica e Laboratorio Prof. Daniele Marini.
Corso di Programmazione Grafica e Laboratorio Daniele Marini
Introduzione al corso Corso di Programmazione Grafica e Laboratorio Daniele Marini.
1 Programmazione grafica e Laboratorio Daniele Marini.
Controllare la prospettiva
Controllare la prospettiva
Architettura di OGL e pipe-line Daniele Marini Davide Gadia Davide Selmo Corso Di Programmazione Grafica aa2005/2006.
GUIs, the user’s perspective Antonio Cisternino. Architettura di base  Semplificando al massimo in ogni sistema che può fare della grafica l’architettura.
Tecnologie Informatiche ed Elettroniche per le Produzioni Animali (corso TIE) CORSO LAUREA MAGISTRALE IN SCIENZE E TECNOLOGIE DELLE PRODUZIONI ANIMALI.
Corso di Laurea in Scienze e Tecnologie Chimiche corso di Informatica Generale Paolo Mereghetti DISCo – Dipartimento di Informatica, Sistemistica e Comunicazione.
Costruzione di Interfacce
Ergonomia: Il monitor del pc.
Come si forma un’immagine?
2. Le immagini: quali e perchè Vettori e raster Wikipedia, l’enciclopedia libera, riassume: nella grafica vettoriale un'immagine è descritta mediante un.
Grafica interattiva a.a. 2003/2004 Docente: Prof. Enrico Puppo Laboratorio: Dott. Paola Magillo.
Costruzione di interfacce Paolo Cignoni
I Sistemi Operativi. Definizione Per Sistemi Operativi (di seguito SO) si intendono quei pacchetti software, a loro volta costituiti da più sottoprogrammi.
Programmazione orientata agli Oggetti Introduzione a Java.
Prof. Dario Scalini. Luce e Colore FOTORECETTORI  coni (colori) e bastoncelli (luminosità)
Obiettivo : determinare la lunghezza focale di una lente mediante l’equazione dei punti coniugati. Materiale : Righello Banco ottico provvisto di scala.
Video Grafica Immagini. Modalità Video Risoluzione –Numero di pixel visualizzati sul monitor; per esempio 800 x 600, 1024 x 768, 1280 x 1024 Profondità.
Transcript della presentazione:

Costruzione di interfacce Paolo Cignoni

Obiettivi Progettazione e realizzazione di applicazioni interattive, con un interfaccia non banale che facciano uso di grafica tridimensionale. basi teoriche e algoritmiche per la modellazione geometrica e il rendering di scene tridimensionali strumenti per realizzare sistemi basati su OpenGL in ambiente Windows. Requisiti Interesse. Conoscenza di un linguaggio OO (C++)

Programma Fondamenti di grafica Algoritmi per la modellazione geometrica e il rendering Librerie e framework per la grafica tridimensionale Progettazione e programmazione di interfacce e applicazioni grafiche interattive in ambiente OpenGL Windows Progettazione e realizzazione di un sistema interattivo in ambiente Windows che usi OpenGL.

Esame Basato su progetto applicazione interattiva in ambiente Windowz che faccia uso di grafica tridimensionale tramite OpenGL

Strumenti Linguaggio C++ IDE: Visual Studio (6.0 o.Net) 3dAPI: OpenGL Libs, Toolkits, ecc MFC per le interfacce Glut per i primi esperimenti in opengl STL per non riscrivere I soliti contenitori E tutto quel che ci può servire per caricare unimmagine, un oggetto 3d ecc.

Corsi collegati Corsi Seminariali Real Time Media 2o Sem Realtà Virtuale 2o Sem Matematica Computazionale: Geometria Computazionale (Marco Pellegrini) 1o Sem

Concetti di base Computer Graphics: Settori applicativi che ne hanno in qualche modo diretto/influenzato lo sviluppo Design & Visualization Trasformare dati in immagini per facilitarne la comprensione Interfacing Aiutare e semplificare il processo di interfacciamento lutente e il sw Entertainment :-)

Architettura di base Semplificando al massimo in ogni sistema che può fare della grafica larchitettura hw minima è la seguente: Graphic Processing Unit Graphic Memory + Frame Buffer Graphic Memory + Frame Buffer

Frame buffer Una porzione di memoria dedicata alla memorizzazione dellimmagine come insieme di pixel da mostrare a video. Caratteristiche Risoluzione (numero di pixel) Range tipici 320x x1200 Profondità (bit per pixel) Range tipici 1 32 (128) Perché si usa i pixel?

Display Hardware Il tubo catodico: un fascio di elettroni viene diretto su una superficie coperta di materiale fosforescente Display vettoriali il fascio veniva pilotato direttamente in maniera totalmente libera Display normali, raster linea per linea, dallalto verso il basso, si spazza tutto lo schermo un certo numero di volte al secondo (refresh rate)

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 da un object un immagine Rendering è il processo con cui un viewer genera un immagine a partire da una scene.

Caveat Object e viewer, come tutte le metafore, sono entità non definite rigidamente… La luce fa parte del viewer? Il viewer è anchesso un object?

Sintesi di Immagini Tra le caratteristiche parametrizzabili di un viewer la più evidente è la Camera: Linsieme di quei parametri che definiscono come e dove si guarda una certa scena.

Rendering: Approccio Fisico Come si svolge fisicamente il processo della visione?

Simulare lilluminazione Fotorealismo La simulazione il più dettagliata possibilie di tutte le interazioni tra la luce e gli oggetti.

Rendering Approccio Non fisico NPR (non photorealistic rendering) Simulare il processo con cui un artista genera un immagine Settore piuttosto nuovo e di ricerca

Pin hole Camera Il processo con cui si formano le immagini può essere simulato da una scatola chiusa con un foro infinitesimamente piccolo sul davanti minima macchina fotografica

Pin hole Camera In un una pinhole camera è facile determinare come si forma limmagine sul fondo della camera (piano della pellicola) Il pinhole è detto il centro di proiezione -

Pin Hole camera La pinhole camera eun modello astratto Fuoco infinito Luminosità infinitesima In realtà (cioè nelle macchine fotografiche e nellocchio) si sostituisce il pin hole con una lente Profondità di campo limitata Maggior luminosità Distorsioni varie

Pin Hole Camera Nelle prossime lezioni assumeremo sempre che stiamo utilizzando una pin hole camera. Cio non toglie che si possano usare modelli più sofisticati che simulino tutte le altre caratteristiche delle camere reali (occhio e macchine fotografiche)

Modello standard della PIC Si sposta il piano della pellicola di una distanza d di fronte al pin hole. Limmagine è ben orientata - -

Definire una camera? Definire i parametri di una camera é necessario perché un viewer possa generare unimmagine di una scene Interattivamente (implicitamente) a (CAD, Games) Seguendo una API (esplicitamente) E.g. using an interface between a program and a graphic system Opengl, Directx Java3d etc

Definire una camera Di solito si deve specificare Posizione (del centro di proiezione) Orientamento Lunghezza focale: determina la grandezza sul piano immagine

Definire una Camera OpenGL gluLookAt( center_of_projection, look_at_point, up_direction) + glPerspective(Field_of_view, … )