Algorithms for Games Development
Students attending this course will study some of the core algorithms and systems related to game development.
This course will approach some of the algorithms and ideas that are at the core of the development of digital games and expand on technical subjects that were seen in the course "Game Programming".
The course will build on many topics relevant to game development, such as:
- Splines, interpolation and trajectories;
- Navigation and path finding;
- Algorithmic complexity and space partitioning;
- State machines and state transitions;
- Math for games, including geometric transformations;
- Hierarchical animation;
- Motion capture;
- Forward and inverse kinematics;
- Character skinning and geometric representation;
- Procedural content generation.
In the course project, the students will be supervised in the acquisition of specialized knowledge in a related area of their choice. Example topics include:
- Rigid body dynamics;
- Animation blending;
- Motion matching.
The essential skills and requirements are:
- Good programming skill, since the course will propose programming exercises and will require a final project.
- Knowledge of basic data structures, such as linked lists and dictionaries.
- Foundational understanding of discrete mathematics and linear algebra.
Optimally the student has completed the course "Game Programming".
Intended learning outcomes
After the course, the student should be able to:
- Implement, use and explain basic geometric algorithms and objects, such as space partitioning, path finding, splines and Voronoi diagrams.
- List and describe the basic ideas and algorithms in procedural content generation.
- Explain how geometric transformations are used to place and move elements in a scene and drive hierarchical animation.
- Program a basic character animation system.
- Implement and explain basic inverse kinematics algorithms.
- Describe the motion capture pipeline, and explain how it is used to animate game characters.
- Analyze, implement and explain a topic of their choice. The topic must be related to the core content of the course.
Ordinary examExam type:
D: Submission of written work with following oral, External (7-point scale)
D2G: Submission for groups with following oral exam supplemented by the submission. Shared responsibility for the report.