Skip to navigation | Skip to main content | Skip to footer

This is an archived syllabus from 2019-2020

COMP37111 Advanced Computer Graphics syllabus 2019-2020

COMP37111 Advanced Computer Graphics

Level 3
Credits: 10
Enrolled students: 120

Course leader: Toby Howard

Additional staff: view all staff


  • Pre-Requisite (Compulsory): COMP27112

Additional requirements

  • Students who are not from the School of Computer Science must have permission from both Computer Science and their home School to enrol.

Assessment methods

  • 70% Written exam
  • 30% Practical skills assessment
Sem 1 Lab 1.8 Tue 16:00 - 17:00 -
Sem 1 w1-5 Lecture Sam Alex SLG.12 Fri 12:00 - 13:00 -
Sem 1 w7-12 Lecture Simon 3.44A Fri 12:00 - 13:00 -
Themes to which this unit belongs
  • Visual Computing


This course follows on from COMP27112, the 2nd year course "Computer Graphics, and Image Processing", and looks at more advanced topics in Computer Graphics, such as large-scale polygonal modelling techniques, capturing geometry from scanners and cameras, procedural modelling, and sophisticated global and real-time rendering techniques. The course is supported by a 10-week laboratory project in OpenGL.


This Course Unit covers the principles of modern techniques for Computer Graphics modelling and image synthesis, on the assumption that students have already completed the introductory Computer Graphics course (COMP27112). Its principal aim is to introduce students to the ever-expanding repertoire of techniques for defining and rendering images of 3D model data. Particular attention is focussed on the increasing requirements for complex rendering and interaction to occur in real-time.


Introduction and overview (1)
Introduction to the course and to the laboratory project. Applications of modelling techniques and image synthesis.

Non-polygonal modelling techniques (1)
Procedural modelling: fractal geometry, modelling with fractals, particle systems, L-systems.

Model acquisition (3)
Laser scanning; surface fitting; occlusions and hole-filling; acquisition of geometry from photographs and video.

The Rendering Equation and Ray-tracing (1)
The Rendering Equation, basic ray tracing, primary and secondary rays, shadow feeler rays, reflection and transparency. Real-time ray tracing.

Monte Carlo ray tracing. Importance sampling, variance reduction methods. Path tracing, bidirectional ray tracing.

Global illumination: Radiosity (1)
Principles: energy exchange between surfaces, implementation approaches, rendering techniques.

Volume rendering (1)

Spatial Enumeration and culling (2)
Spatial enumeration, grids, AABBs, HBBs. Level of detail.Examples of model complexity, the need for interaction. Culling techniques:

back-face, view frustum, portals, occlusion culling.

Teaching methods


11 in total, 1 per week


There will be one lab exercise programming project.

Feedback methods

Face to face feedback and marking in programming laboratories.

Study hours

  • Lectures (11 hours)

Employability skills

  • Analytical skills
  • Innovation/creativity
  • Project management
  • Problem solving
  • Research

Learning outcomes

On successful completion of this unit, a student will be able to:

  • be able to analyse requirements of 3D modelling problems and select appropriate combinations of modelling techniques
  • be able to describe and compare CAD, Generative and Captured approaches to creating 3D models with respect to their fidelity and time/space constraints
  • be able to describe how the rendering equation acts as a mathematical representation of illumination in the real world
  • be able to compare different computational approximations to the rendering equation with respect to their visual fidelity and computational complexity
  • be able to analyse rendering problems to create novel solutions by combining or modifying existing computational approximations

Reading list

Real-Time Rendering, Fourth EditionEric Haines9781138627000A K Peters/CRC Press; 4 edition9 Aug. 2018

Additional notes

Course unit materials

Links to course unit teaching materials can be found on the School of Computer Science website for current students.