Computer Laboratory

Course pages 2013–14

Advanced Graphics

Principal lecturer: Prof Neil Dodgson
Additional lecturer: Dr Alex Benton
Taken by: Part II
Past exam questions: Advanced Graphics, Advanced Graphics and HCI
Information for supervisors (contact lecturer for access permission)

No. of lectures: 16
Suggested hours of supervisions: 4
Prerequisite course: Computer Graphics and Image Processing


This course provides students with a solid grounding in the main three-dimensional modelling and rendering mechanisms. It also introduces supporting topics, including graphics cards, mobile graphics, and animation.


The order of delivery of lectures is provisional and subject to change.

  • Implicit surfaces, voronoi diagrams, mobile graphics. [PAB, 1.5 lectures]

  • Ray tracing. The fundamentals of raycasting, constructive solid geometry (CSG), and bounding volumes. [PAB, 2.5 lectures]

  • Computational geometry. The mathematics of discrete geometry: what can you know, and how well can you know it? [PAB, 1 lecture]

  • Polygons, OpenGL, graphics cards, and shaders. Tools and technologies available today; previews of what’s coming tomorrow. [PAB, 3 lectures]

  • Splines for modelling arbitrary 3D geometry. Features required of surface models in a Computer-Aided Design. Bézier curves and surfaces. B-splines, from uniform, non-rational B-splines through to non-uniform, rational B-splines (NURBS). [NAD, 3.5 lectures]

  • Subdivision surfaces. Introduction to subdivision. The key methods. Pros and cons when compared with NURBS. [NAD, 2.5 lectures]

  • Advanced illumination. Radiosity and photon mapping. [NAD, 1 lecture]

  • Animation. Introduction to animation. [NAD, 1 lecture]


On completing the course, students should be able to

  • compare and contrast ray tracing with polygon scan conversion;

  • define NURBS basis functions, and explain how NURBS curves and surfaces are used in 2D and 3D modelling;

  • describe the underlying theory of subdivision and define the Catmull-Clark and Doo-Sabin subdivision methods;

  • understand the core technologies of ray tracing, constructive solid geometry, computational geometry, implicit surfaces, and particle systems;

  • understand several global illumination technologies such as radiosity and photon mapping, and be able to discuss each in detail;

  • be able to describe current graphics technology and discuss future possibilities.

Recommended reading

Students should expect to refer to one or more of these books, but should not find it necessary to purchase any of them.
* Shirley, P. & Marschner, S. (2009). Fundamentals of Computer Graphics. CRC Press ( $3^{\mbox{\tiny rd}}$ ed.).
Slater, M., Steed, A. & Chrysanthou, Y. (2002). Computer graphics and virtual environments: from realism to real-time. Addison-Wesley.
Watt, A. (1999). 3D Computer graphics. Addison-Wesley ( $3^{\mbox{\tiny rd}}$ ed).
de Berg, M., Cheong, O., van Kreveld, M. & Overmars, M. (2008). Computational geometry: algorithms and applications. Springer ( $3^{\mbox{\tiny rd}}$ ed.).
Rogers, D.F. & Adams, J.A. (1990). Mathematical elements for computer graphics. McGraw-Hill ( $2^{\mbox{\tiny nd}}$ ed.).
Warren, J. & Weimer, H. (2002). Subdivision methods for geometric design. Morgan Kaufmann.