Complex digital games are typically constructed using components that support graphics rendering, sound, physics, AI, networking, and possibly additional genre-specific components. Using an existing game engine, students will learn the components and algorithms typically used in game development, how they are implemented, and how the components interact. Assignments will involve implementing interesting game development algorithms within the concept of demonstration games.

This course will teach students the fundamentals of game development. The course will review the significant components underlying game development, the algorithms used to implement these components, and how the components interact. Following the course, students will be capable of understanding the design of complex games.

The course is taught in a blended style mixing traditional lecture with significant in-class exercises to apply the lecture material.

Where and When

  • Tuesdays, 3:30-4:20, Ellis 319
  • Thursdays, 2:30-3:20, Ellis 319
  • Fridays, 4:30-5:20, Ellis 319

Office Hours

Tuesdays and Fridays, 1:00-2:00, Goodwin 629, or by appointment


Please check OnQ regularly for course information.


Topics may include:

  • Game architecture
  • AI engines
  • Physics engines
  • Game networking
  • Game audio
© 2019 Nicholas Graham