module specification

CU5064 - Shaders and Graphics Programming (2025/26)

Module specification Module approved to run in 2025/26
Module title Shaders and Graphics Programming
Module level Intermediate (05)
Credit rating for module 15
School School of Computing and Digital Media
Total study hours 150
 
50 hours Assessment Preparation / Delivery
64 hours Guided independent study
36 hours Scheduled learning & teaching activities
Assessment components
Type Weighting Qualifying mark Description
Coursework 100%   Final showcase piece with technical documentation
Running in 2025/26

(Please note that module timeslots are subject to change)
Period Campus Day Time Module Leader
Autumn semester North Tuesday Afternoon

Module summary

Students will gain an overview of the physical processes of graphics/image enhancement and processing, as well as an understanding of the software framework necessary to produce graphics/images and shaders including for mobile devices.

AIMS
- enable students to understand the 2D/3D graphics API, the processes of computer graphics programming, storage, and visualisation of graphics/images on various display devices;
- develop communication and practical skills with particular reference to graphics programming and image processing, as well as their visualisation;
- design and implement mathematical concepts and programming structures as well as algorithms in the area of graphics and image processing;

Syllabus

- Introductory survey of graphics APIs (focusing on OpenGL/OpenGL ES) and issues for different platforms (Win/Mac), achieving device independence;
- Graphics hardware and software;
- 2D/3D mathematical models;
- Using models and relevant algorithms to create and display computer graphics objects;
- 2D/3D representations and transformations.  Use of matrices and homogeneous co-ordinates, surface normals and shading;
- Cameras, 2D/3D viewing, clipping planes, viewing volume, viewing transformations;
- Colour and colour rendering, lights and attributes/properties of materials/textures and shaders;
- Creating controls (interactivity) to manipulate computer graphics objects;
- Loading data - take apart and reload an .FBX file

Balance of independent study and scheduled teaching activity

Students will develop theoretical understanding and practical skills based on weekly lectures, tutorials and supervised workshops. The workshops, in particular, are provided to enable group discussions and give opportunities for teamwork experience and practical support.

Appropriate blended learning approaches and technologies, such as the University’s VLE and online tools, will be used to facilitate and support student learning to:
• deliver content;
• encourage active learning;
• provide formative and summative assessments, and prompt feedback;
• enhance student engagement and learning experience.

Learning outcomes

On successful completion of this module students will be able to:

1: Understand the concept of the graphics API, such as OpenGL.
2: Write code to build a 2D/3D computer graphics scene composed from simple graphical objects and apply geometric transformations to the objects in the scene.
3: Write code to read, load, apply shaders/textures and render to screen.
4: Demonstrate ability to process images on screen for enhancement and recognition.

Bibliography