Computer ScienceTextbook

Practical Game Programming

Not rated yetRate this book

Explore game development through C/C++ and Allegro 5. Harris Wang and Walter Ridgewell connect programming, graphics, sound, and design in a practical textbook for upper-level undergraduate learners and independent developers.

FormatExternal access
LanguageEnglish
SubjectComputer Science
LevelNot specified
No. of pages560
Published2026

Read on the publisher’s website. Opens in a new tab.

Front cover of Practical Game ProgrammingFree

About this book

Published in June 2026 by Remix, an imprint of Athabasca University Press, Practical Game Programming follows the development of interactive games from core programming tasks to complete projects. Its emphasis is applied: technical features become components of a playable experience rather than isolated demonstrations.

The publisher describes coverage of input, graphics, audio, file handling, timing, collision detection, and advanced programming. Design, prototyping, interfaces, testing, and quality assurance connect implementation with the player’s experience. Genre-based projects provide opportunities to bring these strands together.

The publisher lists 560 pages; the PDF identifier is ISBN 9781998944224. This page provides an original guide to the opening section, with official links for the complete book. The full text remains with the publisher under CC BY-NC-SA 4.0; its cover has separate reuse restrictions.

Book summary

Study overview of the reviewed opening

Section 1.1 presents game programming as the coordination of several computing skills. Visual output, player input, audio, simulation, artificial intelligence, and interface design contribute to one interactive system. The educational value lies in connecting these elements through working software.

The authors choose C/C++ and Allegro 5 for a practical route into that work. Allegro supplies facilities for graphics, events, input, audio, timers, files, and supporting add-ons. The opening also identifies a cross-platform toolchain built around Visual Studio Code, GCC, CMake, and Ninja.

The section’s learning roadmap moves from understanding games to constructing them. It introduces the intended progression without yet supplying the detailed implementations. Treat this opening as orientation: later chapters and projects develop the techniques it announces.

Suggested study approach

Academic Master editorial guidance: Begin with a small learning journal. Before studying an implementation, write down what you expect it to do, which part you understand, and what you need to investigate. After reading, revise that explanation in your own words.

Choose one modest project goal and keep an evidence trail: a short description, changes made, observations, and unresolved questions. When an experiment behaves unexpectedly, record the conditions before changing several things at once. This creates a useful basis for discussion with an instructor or study partner. These suggestions are independent study advice, not exercises reproduced from the textbook.

Questions for discussion

  • How would you distinguish a programming tool from a design decision?
  • What evidence would convince you that you understand a concept well enough to explain it to a classmate?
  • How could a learning journal help you identify the cause of an unsuccessful experiment?

Book contents and further reading

Open the publisher’s chapter navigation and introductory text.

For related undergraduate course context, see Athabasca University’s COMP 369 outline. This is a related course reference, not a claim that this edition is universally assigned.

Sources and coverage

Based on the publisher’s 2026 edition details, copyright notice, contents, and section 1.1, “Introduction to Video Games and Game Programming.” The detailed overview covers section 1.1 only; later sections and chapters have not been summarised. Consult the official book details and the reviewed opening section.

About access & copyright

This page provides book information and study material. Full-text access is provided by the original publisher or authorised source; a listing does not grant permission to republish the book.

Read our Library Access & Copyright policy

Integrated systems

Recognise how several computing skills contribute to an interactive game.

Tool roles

Distinguish the programming language, supporting library, and build tools.

Learning roadmap

Use the opening to identify later topics for closer study.

Reflective practice

Keep an independent record of questions and experiments.

Reader ratings & reviews

Be the first to rate

No ratings yet

0%0%
0%0%
0%0%
0%0%
0%0%

Share your thoughts

Your review helps other students choose the right resources.

Rate this book

How helpful was this book?No sign-up needed. Your rating appears instantly.