Courses
Game Development - Advanced Programming-2025/2026
Level 1 | ||||
INFO-6028 | Graphics 1 | 4 | ||
This course will examine computer graphics technology fundamentals and its implementation in games and simulations. Topics studied will include GPU pipeline architectures, meshes, coordinate systems, occlusion, camera movement, and basic shader technologies. Various lighting, texturing, and material techniques such as bump mapping, fogging, and basic shadowing will also be explored. Hands-on, practical experience will also be provided in selected topic areas. | ||||
INFO-6044 | Game Engine Frameworks & Patterns | 3 | ||
Students explore current design and implementation of 3D game engines buy building their own game engine framework, which is used throughout the program. Topics include: C++memory management; object oriented fundamentals; software design patterns; basic animation; discrete timing in motion control/capture; scene graphs; scripting implementation; and basic data persistence. | ||||
INFO-6016 | Network Programming | 3 | ||
This course will examine networking as used by games. This course provides students with a comprehensive overview of networking; from fundamentals to advanced applications, using a top-down approach to networking and emphasizes the concepts and skills required for computer and video games. Students will get hands-on experience on how to program various networks. Topics studied will include peer-to-peer and client/server architectures; real-time and turn-based multi-player games, and the theory behind massive multiplayer online games (MMOG). Other topics include security, validation, encryption, progression persistence, and prediction. | ||||
INFO-6025 | Configuration & Deployment | 3 | ||
This course will examine game setup, testing, customization, patching and getting the game to the publisher/player. Topics will include software delivery, patches and updates, scripting, user configuration, persistence (saving and loading), debugging interfaces and integration with existing deployment and publishing technologies and methods. Hands-on, practical experience will also be provided in selected topic areas. | ||||
INFO-6046 | Media Fundamentals | 2 | ||
This course will examine a range of technologies related to multimedia assets used in games, from the perspective of a game programmer/developer. Topics include: audio APIs (simple, streamed, spatial, surround sounds; DSP effects; voice recognition); audio assets; the basic use of 3D modeling and game engine software. | ||||
INFO-6019 | Physics & Simulation 1 | 4 | ||
This course will examine the mathematical theory and various implementations physics in simulating the real-world in both games and simulations. Topics studied will include kinematics and dynamics; collisions and collision responses; particle systems, rigid body simulation, simulation of cloth, and the simulation of physical surface properties such as friction and sounds. Hands-on, practical experience will also be provided in selected topic areas. | ||||
Level 2 | ||||
INFO-6020 | Graphics 2 | 3 | ||
This course is a continuation of 'Graphics Level 1' exploring more advanced topics such as: bump mapping, advanced shadow generation, particle and water simulation and rendering, dynamic reflections, blur, bloom, fur and hair simulation, high-dynamic range rendering, and non-graphical programming of GPUs. Hands-on, practical experience will also be provided in selected topic areas. | ||||
INFO-6045 | Animation | 3 | ||
This course explores advanced animation techniques such as: skinned mesh character rendering and animation, inverse kinematics, cloth simulation, soft body simulation, time effects (such as slow motion/stop motion), integration with existing middleware, and integration and implementation of cinematic (cut scenes, etc.). Hands-on, practical experience will also be provided in selected topic areas. | ||||
INFO-6022 | Physics & Simulation 2 | 4 | ||
This course is a continuation of 'Physics and Simulation Level 1' exploring the implementation of more advanced physical simulation topics such as: dynamic intersections, soft body, physical based motion (both biologic and vehicular), physics based animation, explosions, particle systems and effects, preventing tunnelling, hardware accelerated physics systems, and integration with existing third party tools and middleware. | ||||
INFO-6023 | Game Algorithms & Gems | 4 | ||
This course will examine game or simulation model design and implementation. Topics studied will include data structures, data persistence, terrain, map or environment modelling, vegetation (and other environmental element) generation and representation, weather simulation, level of detail, persistence, procedurally generated environments, as well as the integration of current tools and middleware. Storage and runtime efficiency as well as dynamic management will be examined. Hands-on, practical experience will also be provided in selected topic areas. | ||||
INFO-6017 | Artificial Intelligence | 4 | ||
This course will examine the theory and various implementations of artificial intelligence used in games and simulations. Topics studied will include graph theory, searching and path-finding, finite-state machines, decision trees, production rule systems, fuzzy logic and motion and movement of character and vehicles. Hands-on, practical experience will also be provided in selected topic areas. | ||||
INFO-6024 | Game Component Integration | 3 | ||
This course will examine the assembling of previously built components and modules into a working game. Topics studied will include an overview of game engines, as well as design tradeoffs. Students will produce one or more complete games using rapid prototype development, taking into account overall engine design, asset loading and management, persistence, integration with existing middleware, physical simulation, rendering, object management and garbage collection, user input design and configuration, performance optimization, debugging and scripting. Hands-on, practical experience will also be provided in select topic areas. | ||||