Skip to main content

Computer Graphics:  2010-2011

Lecturer

Degrees

Schedule AComputer Science

Schedule B1Computer Science

Schedule B1Mathematics and Computer Science

Term

Overview

This course is an introductory course in Computer Graphics, and covers a wide range of the field of interactive computer graphics at all levels of abstraction, and with emphasis on both theory and practise. It follows a standard textbook in the field, with additional material used to keep the course up-to-date.

Learning outcomes

Knowledge and understanding

  • Understanding of the fundamentals of the modern computer graphics pipeline
  • The mathematics of affine transformations in three dimensions
  • Manipulation of lighting effects 
  • Application of mathematics to graphics systems

Practical skills

  • Ability to program low-level scan-conversion of simple shapes
  • Working knowledge of a modern 3D graphics library via the practical assignments 
  • Ability to produce usable graphics user-interfaces
  • Ability to write programs from a practical specification and produce realistic graphics output
  • GPU programming

Synopsis

The following are major topics that will be covered. (Numbers in brackets give an approximation to the number of lecture hours spent on the topic.)

  • Fundamentals of graphics hardware and software (3).
  • Essential algorithms: line generation, solid area display, transformations, clipping, projection (5).
  • Abstraction, and simple examples of libraries of graphics functions (2).
  • Modelling of 3-dimensional solids, and display of parametric curves (2).
  • Rendering techniques and colour and lighting models (3).
  • Input devices, interactive techniques, and the human-machine interface (1).
There is practical work to supplement the lecture material; the course does assume previous experience of practical programming in a high-level procedural language, and simple knowledge of matrices and vectors. The practicals themselves will be in Java, or using Java-like syntax (GPU).

Syllabus

The following are major topics that will be covered. (Numbers in brackets give an approximation to the number of lecture hours spent on the topic.)

  • Fundamentals of graphics hardware and software (3).
  • Essential algorithms: line generation, solid area display, transformations, clipping, projection (5).
  • Abstraction, and simple examples of libraries of graphics functions (2).
  • Modelling of 3-dimensional solids, and display of parametric curves (2).
  • Rendering techniques and colour and lighting models (3).
  • Input devices, interactive techniques, and the human-machine interface (1).
There is practical work to supplement the lecture material; the course does assume previous experience of practical programming in a high-level procedural language, and simple knowledge of matrices and vectors. The practicals themselves will be in Java, or using Java-like syntax (GPU).

Reading list

The main course text is "Introduction to Computer Graphics" by J D Foley, A Van Dam, S K Feiner, J F Hughes and R L Phillips, Published by Addison-Wesley, at around £40.00.

Note that this is an abridged and updated version of "Computer Graphics: Principles and Practice" by Foley, Van Dam, Feiner, & Hughes, also available from Addison-Wesley for about £45.00. The latter could be used for the course, but the early editions contain some differences in the examples, exercises, and implementation language (Pascal).