COMP 521: Modern Computer Games
Fall 2024, McGill University

Course Information
Course format
Lectures: The course to be given in-person. Online (zoom) lecturing will only be used if/when necessary, in which cases announcements in MyCourses will be made on or before the day of the lecture.
Recordings: Lectures will be recorded by the lecture recording system, and made available through MyCourses. Note, however, that recording quality is sub-optimal, coverage may be incomplete, and sometimes recordings just fail. Please consider recordings only as a backup plan or for additional reference, and plan on regularly attending class.
Notes: Making notes is part of the learning process. Formal notes will not be provided; students are expected to attend class and make their own notes.
Equipment: Assignments will require Unity3D so you will need a computer capable of running that software. Unity3D is available for Windows, Mac and with some extra effort, Linux. Note that the free personal (or student edition if you prefer) of Unity3D is all you need.
Time & Place Class Schedule
Tuesday, Thursday 11:35–12:55
STBIO N2/2
Instructor Website Email
Clark Verbrugge
Office hours (starting in September): Please see my main web page for specific times and method.
Teaching Assistants
TBA
Pre-requisites
COMP 251 (Algorithms and Data Structures)
MATH 223 (Linear Algebra)
COMP 303 (Programming Techniques) or COMP 361 (Systems Development Project)
A beginner knowledge of Unity3D. If you do not know Unity, a basic knowledge can be acquired in a matter of hours; such as from having done one or more of the simpler online tutorials (e.g., "Roll-a-Ball", and/or "John Lemon's Haunted Jaunt").
Note that assignments will require non-trivial programming ability (C# or Java).
Textbooks
There is no required text for this course. The following recommended texts, however, provide useful background and reference for some of the material taught in the course.
  • Artificial Intelligence for Games, Second or Third Edition. Ian Millington.
  • Real-time Collision Detection. Christer Ericson.
Additionally useful texts include the following.
  • Artificial Intelligence and Games. Georgios N. Yannakakis, Julian Togelius. Another game AI text, but with a somewhat different focus. Note that if you do not need a physical copy you can find this text online.
  • Game Physics Engine Development: How to Build a Robust Commercial-Grade Physics Engine for your Game. 2nd Edition. Ian Millington.