My Project Work

Yu-Gi-Oh trading card game
This is a computer game based on the rules of the popular trading card game.  It is in it's alpha stage, with a beta release coming soon.  

Ray Tracer
Here are some pictures I generated with a ray tracer program that I wrote.
Snowman and Three Spheres - This is the first picture I rendered with my ray tracer program. It's a snowman with three small spheres. The snowman reflects all light, which is why it's white. The small spheres reflect red, blue, and green, respectively. The shadows are made by the two light sources.
Reflective Spheres and a Box

Here is another picture I rendered with the ray tracer. This was my final project which implemented recursive rays, also known as reflection. In the first picture only one ray was shot for each pixel area on the screen. Here, multiple rays are being shot giving the appearance of a reflective surface. This is supposed to be a two spheres and a box on a table. The viewpoint is straight forward, which is why you don't see any reflection from the front of the box.

Three Bowling Balls - This picture is supposed to be 3 bowling balls on a bowling lane, with one pin at the end. The balls are reflective and casting shadows on the lane. This picture was my "pride and joy" so to speak. It's an original picture that I experimented with until it looked fairly presentable. Of course I could do better, as soon I find an OpenGL ready computer I probably will make a better picture. If not that, there's always Bryce, 3D Max, or something like that.

The BACH Project
This was a class project for my software engineering class, going through the software life cycle.

Eavesdropper
This program acts like a sniffer/proxy server. A web client (IE, Netscape) sends and receives web content from another computer running the eavesdropper. There is also optional functionality to view what the eavesdropper is forwarding. But the eavesdropper can only send and receive to one website specified at startup of the program.

Application Server
This program keeps track of a voting table for a web server. This was supposedly a team project, where I wrote the application server, another guy wrote the webserver, and another guy wrote a benchmark for the webserver.

Peer-to-Peer Chat Program
This program works like an instant messager program without using a centralized server. Each node in the system holds information about other nodes on the system. An algorithm is used to determine how information is stored. In brief, if there are n nodes in a network, each node will hold information about log 2 (n) other nodes.

Simple Transport Protocol
This program acts as the transport level between the application and the network. It manages how to deliver information from an application to another computer, and how to deliver data to an application coming from the network.

Database project for university records
This was a group project for my Intro to Database class. Not very exciting, just a lot of SQL.

Data Miner
This program uses a lot of previous data to make predictions based on probability calculations.

STRIPS Planner
This program uses a set of basic instructions, reads in a problem, and determines how to solve the problem using a sequence of the basic instructions.
These are projects i've worked on in college. The first project was designed by Prof. Stephen Schach, the next 3 were designed by Prof. J. Fritz Barnes, and the last programs were designed by Prof. Doug Fisher. Soon I'll be adding my own original creation.

Virtual World
This is one of the first projects I did. It's a virtual environment written in VRML and can be viewed using a vrml viewer such as CosmoPlayer.

Back