Real-time graphics programming
A.A. 2023/2024
Learning objectives
Obiettivo dell'insegnamento è fornire le basi teoriche e pratiche alla base della implementazione di applicazioni grafiche interattive.
Expected learning outcomes
Alla fine delle lezioni, lo studente avrà acquisito le conoscenze necessarie a comprendere le fasi principali della pipeline di rendering grafica in tempo reale, e a implementare applicazioni grafiche interattive utilizzando API grafiche a basso livello
Periodo: Secondo semestre
Modalità di valutazione: Esame
Giudizio di valutazione: voto verbalizzato in trentesimi
Corso singolo
Questo insegnamento non può essere seguito come corso singolo. Puoi trovare gli insegnamenti disponibili consultando il catalogo corsi singoli.
Course syllabus and organization
Edizione unica
Responsabile
Periodo
Secondo semestre
Programma
I principali argomenti dell'insegnamento sono:
- Introduzione alla grafica in tempo reale
- Pipeline di rendering in tempo reale
- Introduzione alle API per la programmazione grafica
- Modelli e strutture dati per la grafica in tempo reale
- Trasformazioni e proiezioni
- Collisioni
- Animazione basata sulla Fisica
- Implementazione di Vertex e Fragment Shader
- Texturing e Texturing Procedurale
- Modelli di illuminazione
- Introduzione alla grafica in tempo reale
- Pipeline di rendering in tempo reale
- Introduzione alle API per la programmazione grafica
- Modelli e strutture dati per la grafica in tempo reale
- Trasformazioni e proiezioni
- Collisioni
- Animazione basata sulla Fisica
- Implementazione di Vertex e Fragment Shader
- Texturing e Texturing Procedurale
- Modelli di illuminazione
Prerequisiti
Buona conoscenza dei concetti fondamentali relativi a Algebra Lineare e Trigonometria. Buone capacità di programmazione orientata agli oggetti.
Metodi didattici
Lezioni frontali.
Materiale di riferimento
Sito dell'insegnamento:
https://myariel.unimi.it/course/view.php?id=2373
Riferimenti bibliografici:
- T. Akenin-Moeller, E. Haines, N. Hoffman, "Real-Time Rendering", 4th edition, A.K. Peters, 2018
- J. Gregory, "Game Engine Architecture", 3rd edition, CRC Press, Taylor & Francis Group, 2018
- M. Bailey, S. Cunningham, "Graphics Shaders: Theory and Practice", 2nd edition, CRC Press, Taylor & Francis Group, 2011
- D. Wolff, "OpenGL 4 Shading Language Cookbook", 2nd Edition, Packt Publishing, 2013
https://myariel.unimi.it/course/view.php?id=2373
Riferimenti bibliografici:
- T. Akenin-Moeller, E. Haines, N. Hoffman, "Real-Time Rendering", 4th edition, A.K. Peters, 2018
- J. Gregory, "Game Engine Architecture", 3rd edition, CRC Press, Taylor & Francis Group, 2018
- M. Bailey, S. Cunningham, "Graphics Shaders: Theory and Practice", 2nd edition, CRC Press, Taylor & Francis Group, 2011
- D. Wolff, "OpenGL 4 Shading Language Cookbook", 2nd Edition, Packt Publishing, 2013
Modalità di verifica dell’apprendimento e criteri di valutazione
L'esame consiste nello sviluppo di un progetto, e in una prova orale. La prova orale verte su una discussione delle scelte progettuali, e sulla discussione di alcuni argomenti trattati nell'insegnamento. La votazione è espressa in trentesimi, e tiene conto sia della qualità delle tecniche di programmazione grafica utilizzate durante il progetto, sia della chiarezza espositiva degli argomenti di teoria.
Educational website(s)
Professor(s)
Ricevimento:
Su appuntamento (contattare il docente tramite email)
Dip Informatica "Giovanni Degli Antoni", Via Celoria 18, stanza 3005