Computer Graphics (2013/2014)

Course code
4S00043
Name of lecturer
Andrea Giachetti
Coordinator
Andrea Giachetti
Number of ECTS credits allocated
6
Other available courses
Academic sector
INF/01 - INFORMATICS
Language of instruction
Italian
Period
II semestre dal Mar 3, 2014 al Jun 13, 2014.

Lesson timetable

II semestre
Day Time Type Place Note
Tuesday 2:30 PM - 4:30 PM optional practice session Lecture Hall B from Mar 13, 2014  to Jun 13, 2014
Thursday 2:30 PM - 5:30 PM laboratorio Laboratory Alfa from Mar 13, 2014  to Jun 13, 2014

Learning outcomes

This course aims at providing the student with the tools needed
to master the algorithms and computational methods upon which
many interactive computer graphics applications are based. The
focus is on understanding the theory (geometry, radiometry) and
the computational issues (algorithms, programming) that lie
behind computer generated images.

Syllabus

1. Introduction to Computer Graphics (2h)
- CG paradigms
- Outline of a CG application
- Course outlook

2. Mathematical background (5h)
- Vector and affine spaces
- Matrices and transforms
- Analytical geometry
- Polygons
- Geometric data structures

3. Geometric Modeling (4h)
- Polygonal meshes
- Parametric surfaces (hints)
- Constructive Solid Geometry (hints)
- Spatial subdivision (hints)

4. Illumination and rendering (3h)
- Introduction: ray casting
- Phisical model: radiometry, BRDF, rendering equation

5. Illumination models (4h)
- Phong model
- Cook-Torrance model (hints)
- Light sources
- Ray tracing: Whitted's model, intersections, culling techniques
- Radiosity


6. Rasterization (6h)
- Geometric transformations
- Clipping
- Hidden surfaces removal: list-priority, depth-buffer
- Scan conversion
- Shading: Flat, Phong e Gouraud
- The OpenGL rendering pipeline
- Multi-pass techniques

7. Mapping techniques (3h)
- Texture mapping
- Bump mapping

8. Photorealism (3h)
- Reflection maps
- Light maps
- Geometric shadows
- Transparency

9. Scientific visualization

10. Laboratory (24 h)
- Introduction to OpenGL programming

Assessment methods and criteria

Written essay (20/30) and evaluation of programming skills (10/30)