Welcome
This course picks up where CS50x leaves off, focusing on the development of two-dimensional (2D) interactive games. Students explore the design and mechanics of such childhood games as Pong, Flappy Bird, Breakout, Match 3, Super Mario Bros., Legend of Zelda, Angry Birds, and Pokémon in a quest to understand how video games more broadly are implemented. Via lectures and hands-on projects, the course explores principles of 2D graphics, animation, sound, and collision detection using the Lua programming language and LÖVE 2D framework. By course’s end, students have programmed several of their own games and gained a thorough understanding of the basics of game design and development, and are equipped to implement the same professionally or personally.
- Prerequisites
- CS50x or prior experience in any programming language.
Learn to create these games
How to Take this Course
Even if you are not a student at Harvard, you are welcome to “take” this course for free via this OpenCourseWare by working your way through the course’s eight weeks of material. For each week, follow this workflow:
flowchart TD
A[Watch Lecture] --> B[Implement Project]
And then implement the course’s final project.
How to Teach this Course
If you are a teacher, you are welcome to adopt or adapt these materials for your own course, per the license.