Northumbria (UK) CM510 Programming for Games 3
International Game Developers Association
Programming for Games 3 - a module on BSc Computer Games Software Engineering at Northumbria University, in Newcastle, England
| Games Education |
|---|
| |
| Course |
Table of contents |
[edit] Teachers
[edit] Instructors
- Chris Rook
- Dave Harrison
[edit] Course Background Information
[edit] Location
Northumbria University City Campus, Newcastle, England
[edit] Classification
See: Areas for classifing for your course.
Games Programming
[edit] Student background needed
Students are expected to have a reasonable experience with C++ programming and a competence in Maths. This module is only offered on BSc Computer Games Software Engineering, year 2.
[edit] Course prerequisites
This module follows on from Northumbria (UK) CM404 Programming for Games 2
[edit] Time periods
The module is delivered over 12 weeks (one semester) with the following contact time each week
- Two 1-hour lectures
- One 2-hour lab session
[edit] Course Structure
[edit] Course description
This is an advanced module of C++ programming, teaching object orientation and compiler writing.
[edit] Course learning objectives
On completion of this module the student will be able to:
- Design and use classes
- Demonstrate an understanding of the creation and structure of a simple 2D game using an API
- Demonstrate an understanding of dynamic memory structures
- Demonstrate an understanding of the use of dynamic memory structures
- Demonstrate an understanding of simple optimisation
- Apply mathematical and physical principles in the context of computer games
[edit] Week by week topics
| Week | Topic |
|---|---|
| 1 | Classes. |
| 2 | Inheritance. |
| 3 | Pointers and structures. |
| 4 | Game Objects. |
| 5 | Dynamic frame rates. |
| 6 | Templates and stuff |
| 7 | Compiler writing |
| 8 | Compiler writing |
| 9 | Compiler writing. |
| 10 | Compiler writing. |
| 11 | Compiler writing |
| 12 | Revision |
[edit] Course Materials & Facilities Used
Here you can link to and/or describe books and other materials you used for this course. Feel free to create new pages for each item here if a page for it does not yet exist.
Books
Programming and Problem Solving with C++ (Dale, Weems & Heddington)
Software (engines, tools)
Microsoft Developer Studio .NET as a C++ development environment.
Syllabus
- Specification of classes including static attributes, inheritance & dynamic binding 15%
- O-O programming design including polymorphism 10%
- Creation of a Sprite Class Structure 10%
- Use of an API to create a 2D game 25%
- Dynamic memory structures such as linked lists and trees 10%
- Simple optimisation - such as Ω notation, inlining and macros 10%
- Applying simple physics modelling including gravity, collision detection, inertia, acceleration etc. 20%
Assessment strategy
Assessment is by exam.
Case studies
Writing a simple compiler
[edit] What worked
The students are now becoming competent C++ programmers
[edit] What didn't work
The balance of what is done is this module seems wrong. While the compiler-writing is an excellent case study to stretch the students' programming abilities, it could be more game-specific.
