Computer Science (COMP) 369

Practical Game Programming (Revision 1)

COMP 374 Course website

Revision 1 is closed for registrations, replaced by current version

Delivery Mode: Individualized study online

Credits: 3

Area of Study: Science

Prerequisite: COMP 206, or  COMP 306, or COMP 308, or Professor approval.

Faculty: Faculty of Science and Technology

Centre: School of Computing and Information Systems

COMP 369 is not available for challenge.

check availability

**Note: Students who are concerned about not meeting the prerequisites for this course are encouraged to contact the course coordinator before registering


COMP 369 is designed to teach you how to develop platform-independent computer games using C++ with Allegro, an open-source, cross-platform library which is very powerful and versatile. Allegro can be used on Windows, Linux, and Mac platforms. This course offers the opportunity to acquire not only practical skills in game programming, but also knowledge of game design and other advanced knowledge and technology related to game development.

Learning Outcomes

After successfully completing this course, students will:

  1. be able to setup a C++ based environment for game development;
  2. be able to develop computer games using C++ and the Allegro library;
  3. be able to write interactive computer games with sound and music;
  4. be able to create sprites and use them in computer games;
  5. be able to install and remove timers in games, and program perfect game loops for events in computer games;
  6. be able to explain what scrolling is, and be able to create and manipulate scrolling backgrounds using tiles and map files;
  7. gain some understanding of game design basics and certain advanced topics in game programming; and
  8. be able to use data files in game development.


COMP 369 consists of the following eight units:

  • Unit 1: Introduction to Game Programming
  • Unit 2: Writing Computer Interactive Games with Sound and Music
  • Unit 3: Programming Sprite in Games
  • Unit 4: Timing in games
  • Unit 5: Scrolling backgrounds
  • Unit 6: Game Design Basics
  • Unit 7: Using Data Files in Game Programming
  • Unit 8: Advanced Topics for Game Programming


To receive credit for COMP 369, you must achieve a course composite grade of at least “D” (50 percent), consisting of a grade of at least 50 percent on the final examination and a grade of at least 50 percent on each assignment. The weighting of the composite grade is as follows:

Assignment 1 Assignment 2 Assignment 3 Assignment 4 Final Exam Total
15% 15% 20% 20% 30% 100%

The final examination for this course must be taken online with an AU-approved exam invigilator at an approved invigilation centre. It is your responsibility to ensure your chosen invigilation centre can accommodate online exams. For a list of invigilators who can accommodate online exams, visit the Exam Invigilation Network.

To learn more about assignments and examinations, please refer to Athabasca University's online Calendar.

Course Materials


Harbour, J.S. (2006). Game Programming All in One (3rd ed.)

Other Materials

All other materials needed to complete the course are in the online course site.

Athabasca University reserves the right to amend course outlines occasionally and without notice. Courses offered by other delivery methods may vary from their individualized-study counterparts.

Opened in Revision 1, December 22, 2010.