70-410 Video Game Programming 1

Video game design is an inherently interdisciplinary and technically challenging activity that requires proficiency in a broad range of topics and skills in the computer science curriculum. Video game developers must be excellent programmers, have a firm grasp of how to render and animate shapes and scenes, understand mathematical modeling of physical systems, be able to design and implement artificial intelligence systems, understand enough about hardware to optimize code for a variety of platforms, be able to plan and document complicated team projects, and appreciate the human factors issues involved in game design. And, of course, game developers must be creative and have an eye and ear for what makes for impactful game content. This course will cover each of these issues in an applied manner as the class builds basic but professional-looking video games from scratch. Students will work both individually and in teams and will be expected to document their work.