Archive for the ‘Portfolio’ Category


January 8th, 2012 No comments

I am in the very, very early stages of a new action adventure game for Android that is currently called Aventurero. Below is a quick demo showing a 3D person walking around. The walking animation is procedural (10 total limbs that move around to create the walking effect). It’s still a work in progress, but procedural animation will save quite a bit of memory and loading time. The texture is just something I threw on there. He will of course look human in the game.

VN:F [1.9.13_1145]
Rating: 5.0/5 (1 vote cast)
Categories: Android, Portfolio, Projects, Technology Tags:

Robo Rally

January 8th, 2012 No comments

In my computer graphics class, we had a semester-long project. Our group of four decided to go above and beyond, and create an incredibly detailed and playable version of the board game “Robo Rally.” The 3D models and textures were created by a member of our group, and I wrote the code to parse, display, and animate the board and characters (all of the OpenGL work, including 8 light sources). The other group members did most of the game logic.

We made the game in Java using OpenGL. The engine draws roughly 126,000 polygons per frame, and does 60fps on most modern computers. There is a central server (which I also wrote) to allow for world-wide multiplayer (up to 4 players).

VN:F [1.9.13_1145]
Rating: 5.0/5 (1 vote cast)
Categories: Portfolio, Projects, Technology Tags:

3D Curveball

April 2nd, 2010 No comments


3D Curveball is a simple game that is available for most Android and iOS devices. It’s quite literally Pong with an extra dimension. The ball travels around in 3D space, and your paddle is now 2 dimensional instead of just a line.

Get It

Search for “3D Curveball” in the Android Market or Amazon Appstore, or “3D Curve Ball” in the iTunes App Store.

How to Play

The goal is to stop the ball from getting by you, and to try to get the ball to pass by your opponent. The best way to do this is to alter the direction of the ball when it arrives at your paddle. This is accomplished by moving the paddle as the ball arrives. If you are moving the paddle to the right when the ball arrives, the ball will curve to the left.

The computer opponent has a maximum speed that it can move in each difficulty setting and level, so the only way to win is by making the ball move faster in the X and/or Y directions than the opponent is capable of moving.

Target Mode

In “Target Mode,” you will need to use the movement explained in the previous section to try to hit the targets. In order to beat each level, you need to hit each of the targets.

When you hit a + shaped target, the ball will bounce off, exploding the target.
When you hit an X shaped target, the ball will explode along with the target.
When you hit a rotating semi-transparent target, the ball will shatter it and continue moving in its original direction.
When you hit a blue tile, the ball will bounce off.
When you hit a red tile, the ball will explode (don’t hit them!).

Since some levels are actively changing even before you release the ball, the timing of the release can often be critical.

Video and Screenshots

VN:F [1.9.13_1145]
Rating: 5.0/5 (1 vote cast)
Categories: Android, Portfolio, Projects Tags: ,

May 2nd, 2007 No comments is a redesign of a website that I created in high school (, which features the same content with the old layout). It contains an archive of games and programs for Texas Instruments calculators, a news section, and a fully functioning forum. Virtually all parts of the site were created from scratch in Perl and PHP with a MySQL database. There are over 30,000 registered users, and have been millions of visitors (accounts are only required for the forum and to rate files).

In addition to creating this website, I was also very interested in programming for TI calculators in high school (specifically the TI-89). I created several somewhat popular games for it in C, the most popular of which is Tankers (which even features a multi-player mode across a link cable between two calculators).

VN:F [1.9.13_1145]
Rating: 4.3/5 (3 votes cast)
Categories: Portfolio, Projects Tags: ,

Calculator Games

January 8th, 2002 No comments

I first got really interested in programming freshman year of high school, when I got a TI-89. I loved to program on it, but the standard way to program (TI BASIC) had severe limitations (though it was still more powerful than the TI-85 I messed around with in middle school). This led me to learn C, using TIGCC, which allows you to compile C code and execute it on a TI-89 (or a TI-92+ or a V200). I made a handful of games, including a falldown clone, a simple car driving game, a shoot-em-up game with rich graphics called Super Alien Strike, and a tank game called Tankers.
My first C game.



Tankers was by far my most successful game. The terrain graphics were taken from a gameboy game, but I did all of the programming. The best feature, which isn’t shown in the screenshot, is the ability to connect two TI-89s together and play multi-player. I have always loved the idea of multi-player games. I also created a PC based map editor for creating Tankers maps (I also love the idea of user-contributed content). There is an entire directory dedicated to maps for Tankers on the most popular TI calculator archive website,

VN:F [1.9.13_1145]
Rating: 5.0/5 (1 vote cast)
Categories: Portfolio, Projects, Technology Tags: