My Work

 

Computer Animation - Lab 1 (Fixed Angles & Quaternions, Curves & Splines)

Summary: This was the very first assignment I completed in Computer Animation, which was an implementation meant to reinforce keyframing, fixed angle and quaternion interpolation, splines, and our first foray into the OpenGL rendering pipeline.

Grade Received: 100%

Planned Enhancements:

User Interface: While this was not required for the lab, I would like to enhance this lab to provide a user interface that allows users to input fixed angles and drop points onto the screen to determine the path of the teapot. This will also make the code more dynamic in that the user will be able to select which method they would like to use to animate the path of the teapot.

SLERP: Implement interpolation along the surface of the curve to avoid the unnatural speedups of the teapot.

 
The front of the “house” image as loaded into my Perspective Vector Display System.

The front of the “house” image as loaded into my Perspective Vector Display System.

Computer Graphics II - Lab 1 (Perspective Vector Display System)

Summary: In this first lab of CG II, we had to build a perspective vector display system without the use of the OpenGL perspective display matrices. This assignment was an implementation of the rendering pipeline as learned in class:

  • Object Definition in 3D Local Space —> Perform Modeling Transform

  • Compose scene in 3D World Space —> Perform View Transform

  • Back-face culling in 3D View, Camera, Eye Space —> Perform Perspective Transform

  • Render in 3D Screen Space —> Perform Device Transform

  • Display in 2D Device Space

Grade Received: 90%

Planned Enhancements:

Parsing Improvement: Enable reading more than one file type. We were only required to parse the file type used by our professor, but there are other standard file types for 3D images that would enable a more user-friendly experience.

Code Readability: Enhance the readability of the code with comments.

 
Screenshot from Level 1 of the game. The mermaid sprite was the protagonist, and each water droplet that hit cotton candy scored 10 points. 100 points progressed the mermaid to the next level.

Screenshot from Level 1 of the game. The mermaid sprite was the protagonist, and each water droplet that hit cotton candy scored 10 points. 100 points progressed the mermaid to the next level.

Computer Game Design & Programming - Final Project

Summary: In this course, we used the game development engine GameMaker Studio 2. This final project was the culmination of what we had learned through the semester, including the following features:

  • Multiple screens and levels, including a title and credit screen

  • Pause, stop, restart and quit capabilities

  • Custom vector graphics

  • Parallax scrolling with animated backgrounds

  • Scoreboard that added points for water droplets as they hit the “cotton candy enemies”, and subtracted points for hits received from the “marshmallow boss”

Grade Received: 97%

Planned Enhancements:

None at this time. Software licensing agreement was via the university.