CS3S665 - Game Engine Design 01 Jul 2022 - 31 Aug 2028 | Version 3
Associated Module Information
| Module Code: | CS3S665 | ||
|---|---|---|---|
| Module Title: | Game Engine Design | ||
| Faculty: | Faculty of Computing, Engineering and Science | ||
| Faculty Group: | Computing and Mathematical Sciences | ||
| Faculty Sub Group: | Computer Science | ||
| Module Leader: | Alun King | ||
| Module Team: | Christopher Tubb | ||
| First Intended Intake: | SEP 2017 | Final Year of Intake: | |
| Date Closed: | |||
| Credit Value: | 20 | Credit Level: | 6 |
| Language: | English | ||
| Percentage of Module Taught in Welsh: | 0 | ||
| Equivalent Module: | |||
| HECOS codes: | 101020 - computer games programming | ||
| HECOS Code Weighting: | 100 | ||
Document Version Information
| Version | 3 |
|---|---|
| Valid From | 01 Jul 2022 |
| Valid To | 31 Aug 2028 |
Module Aims
To develop the students' knowledge of the state-of-the-art techniques used in modern game engine design.
To understand of the role of modern game engines, how they are structured and the technology that underpins them.
Content Summary
Modern game engines are complex systems that support a game environment and interaction within the environment. There are many facets to a game engine, including graphics, animation, physics and simulation, collision detection, audio, interaction and scripting. This module will focus on the architecture of a game engine, the benefits game engines bring and the tradeoffs such as generic gameplay characteristics. The module will focus on a number of key areas:
Architecture of a game engine
The history of the development of games machine architectures and how these ‘novel’ architectures have developed
Advantages and disadvantages of adopting a game engine or developing a new game engine from scratch
Integrating existing components and libraries to create a base-line game engine
The source code to an industrial standard game engine will be analysed and modified
Appropriate tools and libraries necessary for the development and debugging of a complex game engine will be studied
Advanced C programming and debugging techniques. The module will look at how shared libraries are built and debugged
Data-Oriented approaches to game engine design
Scripting - Lua and Python for example and their application to game engines
Networked game design
Networked games – considerations and impact on games code
Client-server programming in game engine design
Learning and Teaching Methods
| Activity Type | Hours |
|---|---|
| Lecture | 24 |
| Practical classes and workshops | 24 |
| Independent Study | 80 |
| Directed Study | 72 |
| Total Hours Selected | 200 |
Learning Outcomes
| # | Learning Outcome |
|---|---|
| LO1 | To critically evaluate the techniques that underpin modern game engines |
| LO2 | To be able to justify techniques used in the design, development and evaluation of game engine and gameplay code |
Module Requisites
N/A
Assessment Criteria
| Assessment Category | Assessment Type | Description | Duration | Word Count | Weight (%) | Best of? | Pass Mark |
|---|---|---|---|---|---|---|---|
| Asynchronous Assessment | Practical Written Work 2 | A practical exercise involving modifying the internals of a game engine. | 0 | 2000 | 50 | No | 40 |
| Asynchronous Assessment | Practical Written Work 1 | A practical exercise involving modifying a game engine external API. | 0 | 2000 | 50 | No | 40 |
Assessment Matrix
| Assessment Type | Learning Outcomes | ||
|---|---|---|---|
| LO1 | LO2 | ||
| Practical Written Work 2 | ✔ | ✔ | |
| Practical Written Work 1 | ✔ | ✔ | |