Projects Overview

Here you will find projects I have worked on, roughly ordered by relevance.

Project categories, found directly under the project title, are as follows: paid, personal, game jam, and class.

[To return to the main page, click here.]

Virtual Reality Field Experiences

Paid Project   |   Unity Engine (C#), Yarn Spinner, Maya, Substance Painter

Overview: Worked on a small team to develop a multi-platform VR app optimized for mobile devices. App's goal was to teach geology students how to do field work and to test their knowledge.

Constant communication between the developer side and the geologist/educator side was required to ensure geological accuracy and the creation of robust learning systems.

Modified app to function as a testbed for research. See the [Publications section] for more info.

Details: Players are dropped into a virtual model of the Grand Canyon (created with real-world lidar data). With the help of their walkie-talkie and visual cues, players follow a path through the canyon, stopping every now and then to carry out geological rock tests and to test their knowledge with multiple-choice questions.

Skills/Concepts Used: VR Integration, Culling, Polygonal Decimation, Basic 3D Modeling and Sculpting, UI Design, Multi-Platform Build Target Design, Performance Optimizations, Billboards, Texturing, UV Unwrapping

Media:

Virtual Reality MRI Scan Simulation

Class Project (Virtual Reality Systems)   |   Unity Engine (C#)

Overview: With a small team, developed a VR application designed to safely introduce nervous patients, notably those with claustrophobia, to the MRI scan and procedure utilizing graded exposure therapy.

Details: Users are dropped into a doctor's waiting room and are called to follow the doctor to the MRI room. After entering the room, users lie down in the machine and the procedure begins. Users, at any time, can press a "panic button" on their hand-held remote to stop the simulation.

Our team visited a real MRI machine to ensure accuracy, both in the 3D model and the sounds it makes.

Awards: Honorable Mention for Virtual Reality Demo Award [More Info]

Skills/Concepts Used: VR Integration, Graded Exposure Therapy

Media:

Pig Chef

Game Jam Project   |   Unity Engine (C#)

[Play the browser game for free on itch.io!]

Overview: As the sole developer on a small team, created a tower defense game for the 2022 Wowie Game Jam 4.0 in around 72 hours.

Details: The jam theme was "collaborate with AI." Players are tasked with protecting the dining room from evil vegetables while simultaneously preparing said vegetables for certain recipes the chef (the AI) requests. Players purchase spice and styling towers using the in-game currency.

At the end of the jam, the game included four levels, four different vegetable types, six different towers, a basic story, a tutorial screen, sound effects, music, and menu, level select, and game won/lost screens.

Skills/Concepts Used: Game Design, UI Design, Strict Time Management, Sprite Sheet Animations, Particle Systems, Sound Design, WebGL Builds

Media:

Celestial Minesweeper 3D

Personal Project   |   Unity Engine (C#)

[Play the browser game for free on itch.io!]

Overview: Created a WebGL app to play the classic game Minesweeper, but in three dimensions.

Details: Players are allowed to choose from four different themes, eight different cube grid sizes, and four levels of difficulty to customize their gameplay. A "Cheat Mode," which reveals all mines from the start, is also included for better learning the game and its rules. Players are timed, but may pause the game at any point for a break or to review the rules or controls.

Skills/Concepts Used: UI Design, Strict Ruleset, Varying Resolution Targets, Test Cases, WebGL Builds

Media:

Channels

Class Project (2-D Game Engine Construction)   |   C++, Simple DirectMedia Layer (SDL)

Overview: Developed a top-down 2D video game inspired by games that feature chaos in a cooperative setting (such as "Unrailed!").

Game engine was written from from the ground-up using C++ and SDL.

Details: Up to two players are placed on an island and are tasked with routing randomly-spawning ships to their destinations. Players must utilize their shovel to dig ship channels, their bucket to place down sand, and their mop to clean up oil trails left by the ships. If a ship is routed to an incorrect destination (e.g., a red ship arrives to the blue side instead of the red) or if a ship explodes (occurs when a ship gets stuck at a dead-end) or if a ship passes through an oil trail, health is deducted. Players must work together in a fast-paced environment in order to keep their health above zero for as long as possible.

Skills/Concepts Used: Game Design, Game Engine Creation, Sprite Sheet Animations, Particle Systems

Links: [Time Lapse of Game Round]   |   [Project Report]

The Coin Pager

Class Project (Tangible and Embodied Interaction)   |   SolidPython, Unity Engine (C#)

Overview: With a small team, developed a proof of concept of a cheap device designed for simple communication between young children and parents. Children would be able to send and receive messages with the Coin Pager while parents would be able to do the same with a smartphone app.

Details: The Coin Pager was designed to be powered by the BBC micro:bit, an ARM-based embedded system. The frame to hold the system was created using SolidPython with 3D printing heavily in mind. The concept for the parent-side smartphone app was created in Unity.

Skills/Concepts Used:Tangibles Design, Primitive 3D Modeling

The Good Driver Incentive Program

Class Project (Professional Issues II)   |   C#, Microsoft SQL, Microsoft Azure DevOps, AWS, eBay API

Overview: With a small team, developed a basic online shopping application (using eBay's API) as a reward system for truck drivers.

Details: The application serves three different types of users: drivers, admins, and sponsors. Drivers are rewarded points by their sponsors for good driving behavior and can use said points to purchase items online. The app supports account creation, account modification, point assigning, point spending, item viewing, and more.

The class environment for this project was designed to be as similar to the real world as possible, and included client requirement changes and documented weekly sprints.

Skills/Concepts Used: UI Design, AWS Integration, Test Cases

Media:

Fractal Canopies Project

Class Project (Computer Graphics)   |   C++, OpenGL (with GLU and GLUT libraries)

Overview: Developed a interactive fractal canopy sandbox with two other students utilizing Bresenham’s Line Algorithm.

Details: Users are able to create and modify fractal canopies by dynamically experimenting with a wide range of variables (such as branch angles, branch reduction factor, branch length, and branch thickness) during run-time. Users are also permitted to translate the canopy and modify its color gradient.

Skills/Concepts Used: Primitive 3D Spaces, 3D Transformations, OpenGL Pipeline

Links: [Project Report]

Media: