CS 529: Fundamentals of Game Development

Credits 3
This course presents techniques in real-time interactive simulation and video game implementations. It introduces the 2D and 3D game engine architecture, including game and system components separation, game flow, game state manager, handling input/output, and the frame rate controller. The course introduces students to the game development environment, such as Windows programming SDK and graphics library DirectX API. It also covers commonly practiced techniques such as space partitioning, Al techniques, particle systems, and collision algorithms. Several physics techniques are discussed and implemented, such as jump and reflection, in addition to behavior algorithms, such as state machines. Different game genres are explained, including Asteroids (2D), Platform (2D), Brix (2D), and Pong (3D). Students learn how to implement and extend collision, matrix, and vector libraries, according to the specific requirements for different games.
Prerequisites
None