Core concepts and techniques of game programming, including the development and usage of game engines for the creation of games. Topics from: game engine architecture; real-time 2D and 3D rendering; character animation; shaders; real-time physics simulation, artificial intelligence, and networking; procedural methods; player input and controls; platform considerations; tools development.