72953 - FONDAMENTI DI COMPUTER GRAPHICS M

Anno Accademico 2023/2024

  • Docente: Giulio Casciola
  • Crediti formativi: 8
  • SSD: MAT/08
  • Lingua di insegnamento: Italiano

Conoscenze e abilità da conseguire

Conoscenza di tecniche classiche ed avanzate per l'elaborazione di immagini, con particolare riferimento alla modellazione geometrica ed alla resa realistica al calcolatore di scene 3D.

Contenuti

Sistemi raster-scan, dispositivi di I/O, librerie grafiche, programmazione event-driven. Mesh 3D e loro rappresentazione grafica. Trasformazioni geometriche 2D/3D, trasformazioni di vista, proiezioni prospettica e parallela, trasformazione window-viewport. Pipeline grafica. Algoritmi di real-time rendering, rimozione delle parti nascoste (hidden line e hidden surface), modelli di illuminazione e algoritmi di shading (Z-buffer), texture mapping. Modellazione poligonale 3D. Il corso prevede una attivita' pratica in cui verra' utilizzato il linguaggio di programmazione HTML5 + JavaScript + libreria grafica WebGL e programmazione GLSL (modulo 1 (6 CFU)).

Nel modulo 2 (2 CFU) si vedrà la Libreria JavaScript cross-browser Three.js, API utilizzata per realizzare applicazioni di Computer Graphics 3D interattive e animate su Web mediante WebGL. Modellazione geometrica di curve e superfici NURBS con esempi in Three.js.

Testi/Bibliografia

Testi da consultare:

1.Peter Shirley, Fundamentals of Computer Graphics, AK Peters (2005);

2.Samuel R. Buss, Computer Graphics: A mathematical introduction with OpenGL, Cambridge University Press (2003);

3.Max K. Agoston, Computer Graphics and Geometric Modeling: Implementation and Algorithms, Springer (2004).

4.Max K. Agoston, Computer Graphics and Geometric Modeling: Mathematics, Springer (2005).

Metodi didattici

Lezioni frontali;

Esercitazioni pratiche;

Demo di software in aula;

Seminari.

Modalità di verifica e valutazione dell'apprendimento

La verifica dell'apprendimento avviene attraverso lo svolgimento di un progetto assegnato nelle ultime settimane del corso e che consiste nella realizzazione di una applicazione web 3D interattiva-grafica. Nello svolgere questo progetto lo studente deve utilizzare tutte le conoscenze acquisite durante il corso. La consegna del progetto deve essere accompagnata da una relazione (tipo tutorial) in linguaggio html. L'esame orale consiste nell'esporre il progetto e nel saper discutere gli argomenti trattati durante il corso.

Strumenti a supporto della didattica

Pagina Web del corso;

Slide; 

Distribuzione software per esercitazione;

Demo in aula di software;

Videoproiettore, PC, lavagna.

Link ad altre eventuali informazioni

http://www.dm.unibo.it/~casciola/html/CG2324.html

Orario di ricevimento

Consulta il sito web di Giulio Casciola