COMPUTER GRAFICA

Anno accademico 2018/2019 - 3° anno - Curriculum A
Docente: Giovanni GALLO
Crediti: 9
SSD: INF/01 - Informatica
Organizzazione didattica: 225 ore d'impegno totale, 153 di studio individuale, 36 di lezione frontale, 36 di esercitazione
Semestre:

Obiettivi formativi

Il corso ha come obiettivo:


- fare acquisire allo studente le nozioni teoriche di base e gli algoritmi fondamentali che vengono utilizzati nella pipeline della produzione grafica tridimensionale;

- fare acquisire allo studente una minima capacità operativa nella modellazione, tessiturizzazione e animazione di oggetti 3d usando software allo stato dell'arte;

- fare acquisire allo studente capacità di giudizio circa le scelte progettuali e delle piattaforme grafiche di riferimento più adatte alla realizzazione efficiente e corretta di specifici progetti grafici;
- presentare allo studente le basi minime di composizione grafica e gli elementi essenziali della comunicazione visiva animata che gli consentano la valutazione oggettiva della qualità di un'opera grafica digitale.

- fornire tutti gli elementi di conoscenza e di linguaggio tecnico essenziali per potere acedere con profitto alla formazione specializzata (on line o diretta) del settore allo scopo di compiere un cammino autonomo di specializzazione nella computer grafica.


Modalità di svolgimento dell'insegnamento

Lezioni frontali per la presentazione degli algoritmi e dei principi generali reltivi agli argomenti trattatti.

lezioni in aula con uso dei PC personali degli studenti e del docente per dimostrare l'applicazione dei principi teorici ed avviare gli studenti all'uso di Blender 3d.


Prerequisiti richiesti

Conoscenza delle nozioni di base relative alle immagini digitali (formati, compressione, risoluzione)

Conoscenza di base della geometria cartesiana e delle trasfornazioni prospettiche.

Conoscenza di nozioni di base sulle funzioni di una variabile reale. Trigonometria. elementi di calcolo vettoriale. Nozioni circa le proprietà fondamentali della luce visibile.


Frequenza lezioni

Obbligatoria per almeno il 60% delle ore di lezione, verificata mediante firma a lezione solo per gli studenti esterni al corso di Laurea in Informatica.
Per gli studenti del corso di Laurea in Informatica la frequenza è autocertificata dallo studente.

Le lezioni hanno cadenza bisettimanale. In genere la prima lezione della settimana è dedicata alla presentazione teorica dei metodi e degi algoritmi e la seconda al laboratorio


Contenuti del corso

Trasformazioni e proiezioni geometriche.

Algortimi relativi al piano digitale

Rappresentazione di oggetti 3d: teoria. Meshes e loro rappresentazione in RAM. Primitive grafiche 3d e operazioni fondamentalli per il mesh editing. Modificatori sulle mesh.


L'equazione fondamentale della illuminazione 3d. Componenti diffusive, speculari e rifrattive.

La rendering pipeline nel modello a scansione: ray casting, ray tracing, ray tracing ricorsivo.La rendering pipeline inun renderizzatore unbiased: metodi montecarlo.

Principi di animazione. Meccanismi di controllo delle mesh.

Cpmputer Aided Geometric design: introduzioni alle curve di Bezier e alle spline. Cenni alle NURBS.

Simulatori per fluidi, clothes, oggetti rigidi.

Principi di linguaggio cinematografico.

Conoscenza opertiva del software Blender.


Testi di riferimento

Dispense del docente, estratti di vari testi che vengono distribuiti durante il corso di lezione dal docente.
Sono suggeriti capitoli tratti da:

3D ART ESSENTIALS, The Fundamentals of 3D Modeling, Texturing, and Animation, AMI CHOPINE, Focal Press

Fundamental of Computer Graphics (IV ed) Marschner, Shirely, CRC press

Fondamenti di grafica tridimensionale interattiva , Montani, Scopigno Scateni, McGrawHill

Grafica 3d con Blender , Siddi, Apogeo

Web tutorials



Programmazione del corso

 ArgomentiRiferimenti testi
1Utilizzo del programma Blender nelle funzionalità di baseGrafica 3d con Blender, Siddi, ed.Apogeo 
2Proiezioni e trasformazioni GeometricheDispense del docente 
3Rappresentazione mesh e editing di solidiDispense del docente 
4Rendering: l'equaizone fondamentaleDispense del docente 
5Ray casting e algoritmi correlatiDispense del docente 
6Ray tracing ricorsivo e algoritmi correlatiDispense del docente 
7Path tracing e metodo montecarloDispense del docente 
8Texture mappingDispense del docente 
9Principi dell'animazioneDispense del docente 
10Controllo della deformazione delle mesh: riggingDispense del docente 
11Computer Aided Geometric design: Hermit, Bezier, B-Spline, NURBSPrimi capitoli del libro CAGD, Farin, Academic press,dispense del docente 

Verifica dell'apprendimento

Modalità di verifica dell'apprendimento

L'esame si articola in due prove che lo studente può affrontare a fine corso nell'ordine che preferisce:

a) prova di laboratorio in Blender. Si propongono tre esercizi su "Modellazione", "texturing", "Pose and animation".

b) prova scritta su argomenti di teoria (5 domenda su vari argomenti del programma)

Superate le prove a) e b) lo studente deve cpmpletare

c) progetto finale di animazione 3d realizzato in Blender su traccia musicale assegnata dal docente.

Il peso delle prove nella valutazione è:

20% prova di Laboratorio, 30% prova scritta 50% progetto


Esempi di domande e/o esercizi frequenti

Testo Laboratorio assegnato nel settembre 2017:

Esercizio 1

Partendo dalla foto allegata modellare la lisca di pesce seguendo la referenza llegata (file pesce.png)

Non è necessario alcun render o materiale. Se usi modificatori NON fare apply.

 

Esercizio 2

Utilizza un piano quadrato e le due immagini allegate (sharon.jpg e sharon_inversa.jpg) per realizzare una immagine in output come quella della immagine finale.png allegata.

Suggerimento: non usare sorgenti di luce nella scena ma applica materiali di tipo “emission” cui applicherai la corretta tessitura.

Fai il “packing” dei file di tessitura.

E' richiesto un rendering del tuo risultato.

 

Esercizio 3.

Utilizza il personaggio riggato nel file allegato duplicandolo dentro la stessa scena.

Metti in posa una copia del personaggio come l'uomo nella immagine di danza allegata.

Metti in posa l'altra copia del personaggio come la donna nella immagine di danza allegata.

Inquadra la scena in modo da avere una immagine quanto più simile a quella di riferimento.

Non occorre fare rendering. Non è richiesta alcuna animazione.

 

Testo scritto sulla teoria assegnato nel settembre 2017

 

 

1.

Le mesh con cui si lavora in CG sono formate per la massima parte da triangoli e quadrilateri. Discutere brevemente, sia per i triangoli così come per i quadrilateri aspetti vantaggiosi e aspetti problematici. Ci sono situazioni nei quali un tipo di poligono è preferibile all'altro? 2. Si descriva il metodo della “ambient occlusion” per il rendering. Come mai spesso produce immagini rumorose? Come si può rimediare a tale difetto? 3. Cosa sono i polinomi di Bernstein? In che modo sono legati alle curve di Bezier? (non occorre fornire la formula esatta dei polinomi di Bernstein, ma solo indicarne le proprietà). Cosa vuol dire che essi forniscono una “partizione dell'unità”? 4. Descrivere la regola estetica di animazione "staging" illustrandola con almeno un esempio.