Honestly, I had a surprising amount of fun making this program. Not only did we get
to make our own framework for it, but all the course material was interesting. Although,
what really brough the project together for me was implementing the Quaternion Julia Sets.
After the class I decided to use this project to give myself some experience with distributed
computing. The way I set up the architecture for the program allowed me to implement the
distrubted processing really quickly.
Key Features:
- Intersection algorithms for rays with spheres, boxes, polygons, and ellipsoids
- Intersection between rays and Quaternion Julia Fractals
- Phong shading
Paper: A paper I wrote on intersections between rays and Julia Fractals
I made this program for a semester long project in my robotic intelligence class. The idea is that the agents will go around and use fuzzy logic to populate the world with different objects. The demo only has good and evil objects, but with the use of player modelling this system could be expanded to do things like populate the world with the player's favorite type of ammo.
Screenshots:Curves and Surfaces was one of the most interesting, and challenging, math classes that I took while at DigiPen. Part of our final grade was this project where we had to allow the user to click points on the screen and then use those as control points for curves.
Curves Implemented:- B-Splines
- Cubic Splines
- Bernstein Polynomials
- de Casteljau's Algorithm
- Nested Linear Interpolation
This was the final project I had for a class that was about using data structures in graphics programming. HOM stands for heirarchical occlusion map and DEB stands for depth estimation number. Once certain occluders were selected they'd be rendered to a much smaller version of the screen, and that would be used to tell if objects are occluded.
ScreenShots:The best aspect of working on this project was being able to program on a Game Boy Color using assembly. It was great experience for working on platforms other than PC, and I definitely gained a lot of respect for everyone who ever programmed a GBC game. There are a lot of challenges to it.
Screenshots:If memory serves me correctly this is the third triangle rasterizer I had to write while at DigiPen. This was the basis for every other assignment in the class which included bump mapping, phong shading, and spherical environment mapping.
This was the final project for one of the hardest classes I took at DigiPen. For this one we had to implement a triangle rasterizer that used hyperbolic interpolation, texture mapping, and shadows. Once again, the framework was provided bu the teacher but this time we got that cool Mega Man model to work with.
Screenshots: