Office Location is Duncan Hall (DH), Room 282

Vote for your favorite games


Class 23, April 25th


Class 22, April 23rd

Alternative input methods in SDL. Java should use something like JInput.

Class 21, April 18th


Class 20, April 16th

Generic serialization in C and in Java.

Class 19, April 11th

Misc other game tech: playing sounds and drawing text.

Class 18, April 9th

More pathfinding: Jump Point Search

Class 17, April 4th

Pathfinding: Djisktra's algorithm and A*.

Class 16, April 2nd

Game AI overview and discussion of semi-randomness.

Spring Break - March 22nd - 30th

Class 15, March 19th

Review of all material up to now.

Class 14, March 14th

Fighting game and brawler game collision detection and resolution.

Class 13, March 12th

Actor wall-edge motion and pixel perfect collision detection.

Class 12, March 7th

Platformer motion.

Class 11, March 5th

Review of collision resolution strategies.

Class 10, February 28th

Collision resolution strategies.

Class 9, February 26th

Intro to game physics, motion, collision detection, collision resolution.

Class 8, February 21st

Lab, focusing on scrolling.

Class 7, February 19th

Optimizations for rendering.

Class 6, February 14th


Class 5, February 12th

Drawing alternative backgrounds like 3/4ths view and isometric views.

Class 4, February 7th

Basic drawing, backgrounds & sprites, and animations.

Class 3, February 5th

Game development math. Vectors, matrices, and my two favorite math functions: atan2 and the dot product.

Class 2, January 31st

The game loop, how it is structured, and how to build code for Windows and Mac.

Class 1, January 29th

Who makes games? How are teams structured? What is a game engine? How is it different from other software?

Class 0, January 24th

Like all good programming languages, we start with 0.

In this class, I will cover the way the class will be structured and how assignments will be given out.