SHE Level 3
SCQF Credit Points 20.00
ECTS Credit Points 10.00
Module Code M3I622943
Module Leader Bryan Young
School School of Computing, Engineering and Built Environment
Subject Applied Computer Games
  • A (September start)

Pre-Requisite Knowledge

Games Programming 1

Summary of Content

This module aims to equip students with a good understanding of some of the challenges in general Games Programming. The student will examine the roll of the modern programmable pipeline and how this pipeline could be utilised in order to create 3D Applications including Video Games. The module will also endeavour to look at the some of the wider Game Programming issues such as Resource Management, MultiThreaded Application Development and tools development.


Programmable Shaders - Vertex Shaders - Pixel/Fragment Shaders - Geometry Shaders Resource Loading & Management - Textures - 3D Models - Shaders - Resource Management Techniques Reflectance Models - Global Lighting - Light Sources - Standard Reflectance models(such as Lambert Diffuse & Blinn-Phong Specular) Animation - Algorithms and Data Structures - Implicit Animation Techniques - Explict Animation Techniques Multithreading - Overview - Pratical Applications - Tools & Techniques Tool Development - Working with High Level languages - Content Processing - Creating tools for Designers & Artists

Learning Outcomes

On completion of this module, students should be able to:Demonstrate an understanding of the Programmable Graphics PipelineDevelop Applications which demonstrate an understanding of the common algorithms and data structures used in 3D Game ApplicationExamine the common Reflectance models used in Video Game GraphicsExamine and implement various Resource Management techniques used in video games

Teaching / Learning Strategy

The University 'Strategy for Learning' documentation has informed the learning and teaching strategy for this module. The module material will be introduced through lectures, while practical exercises, based on the lecture material, will be given to students for their laboratory sessions. Tutorials will be used to help explain and elaborate on both the lecture material and the laboratory exercises. Full use will be made of GCU Learn to provide Lecture-based and related study materials, along with sample solutions of Tutorial and Laboratory exercises, thus encouraging the development of independent learning and allowing self-reflective feedback on student performance. Staff-based feedback on student performance for submitted work will be provided in line with the University feedback policy, with summative feedback and grades on the coursework assessment utilising GCU Learn. The additional interactive discussion features of GCU Learn will be utilised, as appropriate to the module, to stimulate independent and flexible student learning outwith scheduled class time.

Indicative Reading

Akenine-Moller. T, Haines. E, Naty Hoffman. N, (2008) Real-Time Rendering 3rd Edition, A K Peters Hawkins, K. Astle, D. (2005) More OpenGL Game Programming 2nd Edition, Course Technology Sellers. G, Wright. R, Haemel. N,(2013) OpenGL Superbible: Comprehensive Tutorial and Reference 6th Edition, Addison Wesley Shreiner. D, Sellers. G, Kessenich, J. Licea-Kane. B,(2013) OpenGL Programming Guide: The Official Guide to Learning OpenGL Various Authors, (2000- 2010) Game Programming Gems Vol 1 -8, Charles River Media

Transferrable Skills

D1 Specialist knowledge and application D2 Critical thinking and problem solving D4 Communication skills, written, oral and listening D5 Numeracy D7 Computer literacy D8 Self confidence, self discipline & self reliance (independent working) D10 Creativity, innovation & independent thinking D15 Ability to prioritise tasks and time management

Module Structure

Activity Total Hours
Practicals (FT) 24.00
Lectures (FT) 24.00
Independent Learning (FT) 122.00
Tutorials (FT) 12.00
Assessment (FT) 18.00

Assessment Methods

Component Duration Weighting Threshold Description
Exam (School) 2.00 50.00 35% Lab Based Test
Coursework 1 n/a 50.00 35% Group Software Project