These are just some of my favorite projects that I've worked on over the years.  Recreational programming isn't as easy to come by once you're out of college and have to work the 9 to 5 (or 10/11 to 6 in my case) but I hope to add some more projects here given I have the time to write new games or play with new technologies and APIs. 

Scout
Scout was my initial endeavour into creating a multipurpose 3D game engine, never intended for anything big other than acting as a learning exercise and real-world implementation of most of the techniques I learned about up until that point.  Some of the highlights include:

- Quake 3 BSP for collision and level rendering including PVS
- Shaders or "materials" for techniques such as toon rendering
- Particle system
- Many data-driven elements for quick debugging and testing
- Command/message-queue model throughout the engine, would have facilitated the implementation of a scripting system
- DirectX9/HLSL used for graphics
   

Mars Defense

Something I put together in a couple of weeks as a "proof of concept" of what little I had of Scout at that point.  I actually used this demo in my internship interviews at MS, so you never really die or win since I had to talk through the whole thing.  Very basic in technology and gameplay, you can see a basic particle system in action there.

Move and fire with the mouse, press Q to quit.  I should warn that this was only tested on a couple machines although it ran on all the ones I demoed it on.  Don't be surprised if you find bugs or crashes on certain configurations. 
  Click to enlarge   Download Mars Defense (~6MB)

The Swarm
My first complete game, soon after I got into game development in the middle of college (if you don't count the BASIC text and ASCII games from high school).  Galaga clone written using DX7 and featuring really bad photoshop, with some intro music by my brother.  Complete with title screen, bad animation, ending, and cliffhanger (gasp).

Move with the arrow keys, fire with spacebar, quit with Esc.  Again, beware of bugs.
    Download The Swarm (~3MB)

Network Library

These are some class libraries I wrote to wrap Winsock and UNIX (Berkeley) Sockets.  The same code compiles on both Windows and UNIX and its flavors and contains functionality for TCP/IP client-server communication and UDP/IP.  I've used the code in several projects and included is a multiplatform chat server and an MFC client program for Windows (ala mIRC), although one could just as easily write a client in Java or for another platform given it follows the server's protocol.  Included are project files for Visual Studio 2003 and 2005.
  Click to enlarge   Download Network Library (~4MB)