Module Code | CSU44052 |
Module Name | Computer Graphics |
ECTS Weighting [1] | 5 ECTS |
Semester Taught | Semester 1 |
Module Coordinator/s | Binh-Son Hua |
Module Learning Outcomes
On successful completion of this module, students will be able to:
- Write graphical programs, using OpenGL or a similar graphics API, of moderate complexity;
- Select an object or scene representation, create a model using modelling software, and export this model for use in an interactive application;
- Discriminate between the different rendering choices for displaying objects, such as global or local illumination algorithms, and select the correct solution for the application area;
- Derive and solve the mathematical formulations that underpin the practical aspects of creating, animating and rendering objects and scenes;
- Critically appraise current computer graphics topics.
Module Content
The objective of this module is to equip the students with the fundamental understanding of the major elements of Computer Graphics and explore related areas including geometric modelling, rendering and animation. The main focus of the module is on the mathematics and algorithms used in the synthesis of computer graphics imagery and animation, and their practical application. Students are introduced to the standard architectures of modern graphical applications including details on the underlying hardware and low-level software components common to all such systems. The module is intended to enable students to bridge the gap between these low-level fundamental, components common to all computer applications, and the high-level abstract output in most interactive graphical applications. Students are also introduced to OpenGL, a modern high-level graphics API which is widely used for 3D Design and Visualisation, along with industry standard modelling software, and this software is used throughout the module to demonstrate concepts and to allow the students to develop their own 3D models, scenes and applications.
Specific topics addressed in this module include:
- An introduction to computer graphics; problem domain and applications;
- Linear algebra – two and three dimensional transforms; geometric operations; hierarchical 3D transformations;
- The computer graphics pipeline and the OpenGL API for 3D computer graphics;
- Projection and viewing; window to viewport transformation; Illumination models and rendering algorithms; colour, shading algorithms (Gouraud and Phong), local and global illumination.
Teaching and Learning Methods
The module will be delivered through lectures and labs.
Assessment Details
Assessment Component | Brief Description | Learning Outcomes Addressed | % of Total | Week Set | Week Due |
Examination | No final exam, but we will have a number of quizzes in the second half of the term that will assess knowledge of the theory. | LO3, LO4, LO5 | 40% | N/A | N/A |
Labs | Weekly labs will be set to build experience in OpenGL. A Mid-term assessment and a Final project will be graded. The Final project will be at the end of term. | LO1, LO2 | 60% | N/A | N/A |
Reassessment Details
Coursework (100%).
Contact Hours and Indicative Student Workload
Contact Hours (scheduled hours per student over full module), broken down by: | 33 hours |
Lecture | 22 hours |
Laboratory | 11 hours |
Tutorial or seminar | 0 hours |
Other | 0 hours |
Independent Study (outside scheduled contact hours), broken down by: | 92 hours |
Preparation for classes and review of material (including preparation for examination, if applicable) | 36 hours |
Completion of assessments (including examination, if applicable) | 56 hours |
Total Hours | 125 hours |
Recommended Reading List
Course Text: Shirley, Peter et. al. Fundamentals of Computer Graphics (2nd edition) Wellesley: A K Peters, 2005.
Students are also encouraged to use appropriate texts and reference documentation, where necessary. For example:
- Introduction to Computer Graphics, Foley, Van Dam, Feiner, Hughes and Phillips.
- Fundamentals of Computer Graphics (3rd edition) Shirley and Marschner.
- OpenGL Programming Guide: The Official Guide to Learning OpenGL, (5th edition), Dave Shreiner, Mason Woo, Jackie Neider and Tom Davis.
- Interactive Computer Graphics, A top-down approach with OpenGL (6th edition), Edward Angel and Dave Shreiner.
Module Pre-requisites
Prerequisite modules: N/A
Other/alternative non-module prerequisites: High level of C or C++ programming is essential, at least freshman-level mathematics.
Module Co-requisites
N/A