Skip to main content

Unit information: Computer Graphics in 2018/19

Please note: It is possible that the information shown for future academic years may change due to developments in the relevant academic field. Optional unit availability varies depending on both staffing and student choice.

Unit name Computer Graphics
Unit code COMS30115
Credit points 10
Level of study H/6
Teaching block(s) Teaching Block 2 (weeks 13 - 24)
Unit director Dr. Ek
Open unit status Not open




School/department Department of Computer Science
Faculty Faculty of Engineering


This course will focus on the basic principles underlying computer graphics. Computer graphics encapsulates many different topics such as animation, interaction, physics, geometry and optimisation. This course will focus on rendering, i.e. the actual process of creating realistic images from a given geometry. In the first part of the course we will formulate the mathematical models of image generation and implement a rendering technique based on this. In the second part of the course we will focus on the rendering for real-time applications such as computer games. The coursework for this part is to render the same geometry as in the first part allowing us to see the pros and cons of each approach. The aim of the course is not to teach modern graphics APIs such as OpenGL or DirectX but rather understanding the fundamental principles underlying such packages. As such the practical part of the course work will be implemented using minimal external libraries. However, the intention is that once you have passed the course you should be able to pick up a modern API and use it for your future endeavour within the field.

Intended learning outcomes

Successful completion of this unit will enable a student to:

  • Understand the physical principles of image generation
  • Derive a mathematical model of image generation
  • Detailed knowledge of three-dimensional geometry and linear algebra
  • Understand the practical implications of implementing a rendering pipeline on a computer
  • Basic knowledge of what techniques are used for Computer Games and Visual Effects
  • Implement a simple raytracer
  • Implement a simple rasterizer

Teaching details

20 lectures, 24 hours of laboratory sessions. A further 56 hours are nominally set aside for coursework, private study, etc.

Assessment Details

60% coursework, 40% exam

Reading and References

This course will be taught without a specific course book. The intention is that all the material will be covered during the lectures. In the lecture notes we will provide references to free resources when additional material is needed.