Skip to main content

Computer Graphics:  2010-2011

Lecturer

Degrees

Schedule S1(3rd years)Computer Science

Schedule B1Computer Science

Schedule B1(M&CS)Mathematics 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).

Feedback

Students are formally asked for feedback at the end of the course. Students can also submit feedback at any point here. Feedback received here will go to the Head of Academic Administration, and will be dealt with confidentially when being passed on further. All feedback is welcome.

Taking our courses

This form is not to be used by students studying for a degree in the Department of Computer Science, or for Visiting Students who are registered for Computer Science courses

Other matriculated University of Oxford students who are interested in taking this, or other, courses in the Department of Computer Science, must complete this online form by 17.00 on Friday of 0th week of term in which the course is taught. Late requests, and requests sent by email, will not be considered. All requests must be approved by the relevant Computer Science departmental committee and can only be submitted using this form.