A Cloudy Day

A game where you play as a cloud responsible for keeping the garden green. Utilizes l-systems and particle effects to create an atmospheric, relaxing environment without the use of any pre-drawn art.

pygame.org project page


A Python library for rendering l-system flora with Pygame.

pygame.org project page

Set Adrift

A 2D sailing based puzzle game for released for the iPhone. Features 21 levels, score tracking, reggae music, and intuitive touch controls. The iPhone version is no longer available to be purchased, but the Python prototype is still hosted on Pygame.

additional credits

pygame.org project page for the prototype

Boids Implementation

A C++/OpenGL implementation of Craig Reynolds' bird flocking simulation algorithm. The boids are drawn as cones and fly around in 3D space bound by the rules of avoidance, velocity matching, and flock centering. I also added in a "predator boid" who flies around and scatters the flocks as they form. It's an interesting algorithm and has been used in everything from Half-Life 1 to Batman Returns. This code is fairly old and unoptimized. I wrote it as a student but have been meaning to go back through it and "prettify" things.


MacOSX Binary. (Tested on 10.6, requires OpenGL/GLUT)

Mr. Frog vs. Osiris

A rather silly competitive platformer for two players. Player one controls Mr. Frog with the keyboard as he journeys across ten levels seeking the sacred platform. Player two controls OSIRIS, LORD OF THE UNDERWORLD who makes things difficult for Mr. Frog by placing obstacles, turning out the lights, and changing gravity.

pygame.org project page