GAMES PROGRAMMING 3

SHE Level 4
SCQF Credit Points 20.00
ECTS Credit Points 10.00
Module Code MHI625659
Module Leader Bobby Law
School School of Computing, Engineering and Built Environment
Subject Applied Computer Games
Trimesters
  • A (September start)
  • B (January start)

Pre-Requisite Knowledge

Games Programming 2

Summary of Content

This module focuses on the multi-core architecture of modern video game hardware. This module examines the programming strategies used to gain the maximum performance for video games on modern multi-core games hardware. The module also covers a range of performance profiling techniques in regards to processor and memory usage, along with how to investigate and solve bottlenecks. The module then explores physics engines and how they operate from a high level perspective before looking at advanced physics techniques with a practical focus to be utilised within a video games context.

Syllabus

-360b7 Multicore Paradigm: Introduction to hardware architecture; Multicore hardware; Challenges and implications of multicore programming techniques; Threading. -360b7 Performance profiling techniques: Techniques and tools to measure processor and memory usage; Function profiling; High performance measuring; Memory fragmentation; Methods for comparing and investigating issues. b7 Physics engines: A broad overview of how the work; Broad and narrow phase collision detection; Collision response; b7 Advanced physics: Vehicle physics; Softbody physics; Fluid dynamics; Cloth Simulation.

Learning Outcomes

On successful completion of this module, students should be able to:1. Understand and apply the multicore paradigm as it applies to video game development.2. Analyse and evaluate different profiling techniques in a video game context.3. Understand the high level operation of physics engine.4. Understand and implement advanced physics techniques in a video game context.

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 out with scheduled class time.

Indicative Reading

-720 - Eberly, D, H. (2010). Game Physics. 2nd Edition. CRC Press. ISBN-13: 978-0123749031. -142 - Gregory, J. (2018). Game Engine Architecture. 3rd Edition. A K Peters/CRC Press. ISBN-13: 978-1138035454. -142 - Millington, I. (2010). Game Physics Engine Development: How to Build a Robust Commercial-Grade Physics Engine for your Game. 2nd Edition. CRC Press. ISBN-13: 978-0123819765. -142 - Pllana, S. and Xhafa, F. (2017).Programming Multi-Core and Many-Core Computing Systems (Wiley Series on Parallel and Distributed Computing). Wiley-Blackwell. ISBN-13: 978-0470936900. - Various Authors, (2000- 2010) Game Programming Gems Vol 1 -8, Charles River Media -142 - Williams, A. (2018). C++ Concurrency in Action. 2nd Edition. Manning Publications. ISBN-13: 978-1617294693.

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 D12 Appreciating and desiring the need for continuing professional development D15 Ability to prioritise tasks and time management

Module Structure

Activity Total Hours
Independent Learning (FT) 132.00
Lectures (FT) 12.00
Practicals (FT) 24.00
Assessment (FT) 20.00
Tutorials (FT) 12.00

Assessment Methods

Component Duration Weighting Threshold Description
Course Work 01 n/a 100.00 40% Practical based Assignment