This course examines the fundamentals of computer game software designed to familiarize the students with a broad understanding of many aspects of computer gaming. The course prioritizes broad coverage over deep coverage. Topics include 2D/3D graphics, input/output, real-time simulations, resource management, vector mathematics, sound, concurrency, and so forth, with an emphasis on cross-platform development. Practical applications of these topics are covered in programming assignments throughout the semester with the goal of developing a simple game of the student’s choice. Programming assignments are done in C or C++ on PC, MacOS, or Linux. Prerequisite(s): EN.605.668 – Computer Graphics, Linear Algebra is recommended.