Module Descriptors
GAMES ENGINE CREATION
COSE40638
Key Facts
Digital, Technology, Innovation and Business
Level 4
30 credits
Contact
Leader: James Vickers
Hours of Study
Scheduled Learning and Teaching Activities: 72
Independent Study Hours: 228
Total Learning Hours: 300
Assessment
  • Coursework - Assessing a portfolio of C++ fundamental principles weighted at 50%
  • Coursework - Create a simple 2D game framework using C++ and SDL weighted at 50%
Module Details
Module Indicative Content
In this module, students will learn how to build a custom 2D game engine from scratch using C++, SDL and object-oriented techniques. Firstly the students will be taught how to create a simple 2D game framework and the secondly implement a simple 2D game using C++ and DirectX. This will be done by the teaching of the following:

Introduction to games development with object-oriented design and programming using C++ and SDL
Game industry processes
Software development methodologies
Basic game structure
Modular game engine development and design
Introduction to graphics APIs (DirectX and OpenGL)
Sprites and 2D animation
Event systems
Input handling
Clean code and good practice
Testing and debugging techniques
Module Resources
DirectX and OpenGL
Data Projector
Student Computers
Module Texts
Dawson, M. (Oct 2010), Beginning C++ Through Game Programming, Delmar Cengage Learning; 3rd Revised edition
Kelly, C. (July 2012), Programming 2D Games, A K Peters/CRC Press
Schildt, H. edition (Dec 2003), C++: A Beginner's Guide, Second Edition,McGraw-Hill Osborne
Module Learning Strategies
3 hour lecture/tutorial per week delivered as 8 weeks intensive Lecture/Tutorial followed 4 weeks of surgery sessions each semester.

Key Information Set Data:
24% Scheduled Learning and Teaching Activity
76% Guided Independent Learning
Assessment Details
Assessing a portfolio of C++ fundamental principles. (Learning Outcomes 1 and 2) 50% weighting

Create a simple 2D game framework using C++ and SDL (Learning Outcomes 3 and 4) 50% weighting
Web Descriptor
2D games require very differnet techniques than 3D games. In this module you will not only learn and enhance your C++ programming but you will also learn how plan and build a 2D game using SDL. You will also have the ability to bring in skills you learn from other first year modules setting you on a good pathway for future games programming and development modules.