One of the classes I took senior year was Ray Tracing. It turned out to be a much more interesting course than I had first thought it would be. The course went through all of the physical properties of light, transmission, reflection, as well as phong, diffuse, and ambient lighting. All of this was done using only GDI+. The program is not downloadable because all it does is generate the pretty pictures you see below.
I wrote an importer for the flexporter format (which exports from 3dsmax) and then slerp inbetween the given keyframes. The path taken around the track is a spline that the character goes around at uniform speed (relative to the ground). I also wrote my own Quaternion, matrix, and vector library for this assignment. The character models and animations were done by other students at DigiPen.
Controls:I created a 3x3x3 cube out of springs and then interconnected all of those points with other springs across the diagonals as well. This actually turned out to be a fairly easy project, but for some reason it's always been one of my favorites as well. The controls are terrible, but you can at least see what's going on.
Controls:For my Artificial Intelligence class I had to do A* pathfinding. The framework was created by the professor, Steve Rabin, so luckily I only had to work on the algorithm. Admittedly, this is a very easy algorithm to perform, so I'm really just putting it here for completeness (and it's cool to look at while it works).
Controls:
What we did is find a way to use a spring-based physics system to model human relationships, and more importantly,
group dynamics. Using springs to form the bonds between individuals, we are more accurately able to represent
the dynamics of a real relationship. This system allows us to visually represent a relationship and it’s effects
on groups as a whole.
Put to use in a game environment, this sort of engine has the potential for an extremely rich social environment
for the player to explore. Every action the player takes can send ripples through the web that is the game’s
societal structure. Coupled with gameplay to match, this would allow for a unique experience every time the game
is played.