17661 - Computer Graphics

Academic Year 2017/2018

Learning outcomes

At the end of the course, students learn the fundamentals of 3D computer graphics (polygonal modelling and real-time rendering). In particular, he/she is able to model and render scenes graphivally making use of suitable software libraries.

Course contents

Raster-scan systems, I/O devices, graphics libraries, event-driven programming. 3D mesh and graphics representation. 2D/3D geometric transformations, viewing transformations, perspective and parallel projections, window-viewport transformations. Graphics pipeline. Real-time rendering, algorithms with hidden parts removal (hidden lines and hidden surfaces), illumination models and shading algorithms (Z-buffer), texture mapping. 3D polygonal models, curves and surfaces in parametric form, geometric modeling with spline and rational spline (NURBS) curves and surfaces, geometric modeling tools. The course provides a practical part where C/C++ programming language and OpenGL/GLSL (JavaScript and WebGL) graphics libraries will be used.

Readings/Bibliography

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).

Teaching methods

Frontal lessons in class;

Practise;

Demo in class of software packages;

Seminars.

Assessment methods

The assessment of learning occurs through the execution of a project assigned in the last weeks of the course and that consists in the realization of an interactive and graphics video game 3D. In carrying out this project, the student must use all the knowledge acquired during the course. The delivery of the project must be accompanied by a report (such as tutorials) in html language. The oral examination consists of exposing the project and in being able to discuss topics covered during the course.

Teaching tools

Teacher's pantries;
Slide presentation;
Software distribution for practice;
Demo in class of software packages;
Video-projections, blackboard, PC.

Links to further information

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

Office hours

See the website of Giulio Casciola