Digitial Business Card (July 2023)

An introduction project to React. I had a lot of fun with this. It taught me a lot about CSS styling.

See the site hosted on Github Pages here.

Mouse Game (January 2021 - May 2021)

My team and I made this project for our Video Game Design Class. it is a 3D Platformer focused around a mighty mouse and a dangerous human world.

The mouse must navigate around obstacles collecting markers and ultimately nabbing the cheese.

I was incredibly proud of this finished product and all that I learned building it. This project taught me a lot about Inverse Kinematics and Root Motion, as well as Game Feel and AI.

CrashCarts (January 2021 - March 2021)

 

This was the project developed for my Reworld Internship, winning the Best Game Award with a $2500 reward.

The premise of the game is to collect the items on your shopping list and crash into your competitors to make them drop their items. Whoever gets the most points at the end of three rounds wins!

This was one of my first experiences working on a team of other interns. We had a bunch of unique and talented individuals all working together to make a fantastic product. We had a producer, designer, audio engineer, 3d artists, and others that all contributed to Crash Carts. It taught me a lot about working in an agile environment and a lot about Lua.

3-D Mesh (Jun 2020 - Dec 2020)

Proj4PhaseCWaNG.gif
 
 

In my computer graphics course, we’re taught the foundation of multiple techniques that are used in modern computer science, such as 3-D meshes, vectorization, and animation.

To the left is a demonstration of border smoothing done on a 3-D mesh. This smoothing operation is a Bezier curve of four points, and an average is derived and formed.

Of note, this operation is particularly difficult because the mesh is minimally stored. All that is available for access is the location of the points, the corners of each point, and what corner is opposite to another. As little information as possible is stored such that extremely large meshes (found in video games) can still run smoothly with as little memory usage as possible.

Face Morph (Jun 2020 - Dec 2020)

Proj3PhaseC+WANG.gif
 
 

Another such project was how faces are morphed. Control points are selected and image boundaries are transformed using linear and quadratic interpolations. The GIF to the left demonstrates a GUI I created that accepts three different images and control points to form a Neville interpolation among calculated barycentric coordinates that morphs the images and aligns their eyes and mouth.

 

Corona King (March 2020 - April 2020)

CoronaKing.gif

You are a medieval doctor that was transported to America as the last line of defense after the coronavirus pandemic has destroyed much of the American infrastructure. It is up to you to defeat the huge viruses with your deadly syringes while dodging spewed RNA and spaces that go under quarantine.

This game was largely an introduction to C as well as many low-level concepts such as DMA, VSync, Page-flipping, and Sound. I also utilized containerization and iterative design. Overall, it was an informative experience with control registers and the infrastructure of gaming engines.


Pill Reminder (January 2020 - April 2020)

PillReminderStoryBoard.png

Accounting for over 125,000 deaths every year. medication non-adherence should not be a difficulty people have to experience. My team and I worked on a solution to streamline the medication taking process. Here, we embarked on a vertical project to create a pill-reminder app. Using Norman Principles and other principles of design, we created an intuitive and user-friendly interface to make the process of taking medication seamless.

The entire project can be viewed here. We tested multiple interfaces to determine viability and conducted multiple user interviews, gaining real-world experience and information.


 RatView (August 2019 - December 2019)

ratViewCompressed.gif

In the Pandarinath Lab, we train Long Evans rats to perform a protonation-supination task. In essence, we cue the rats to turn a knob either clockwise or counterclockwise. We intent to implant electrodes to measure neural activaty in the M1 cortex. By pairing this neural spiking data with muscle EMG data, we can find important information that may lead to a better understanding of muscle-neural communications and future brain machine interfaces.

To facilitate this rodent training, I developed RatView, a graphical interface for real-time, simultaneous monitoring of up to four rodents during behavioral training. RatView presents useful, temporal information that allows for dynamic and responsive training. This project provided me an introduction to MATLAB GUI making as well as communication techniques between a script and a Raspberry Pi.


SpaceTraders (August 2019 - November 2019)

spacetraders.gif

I believe that failures should be shown just as much as successes.

SpaceTraders was the first video game I ever made. It was also a team project for my Object and Design class. Ironically, in a code design class, it was some of the worst code I had ever written. To me, it was a realization to how complicated and gritty video game creation can be, and it taught me to analyze every single aspect of a project.

As you can see, there are many issues with SpaceTraders, namely a lack of art, window sizing, and any form of story telling. I often return to this project to remind myself the importance of understanding the bigger picture. ST is a prime example of when “done is better than perfect” is wrong. If a project is seen as modules, simply completing a module is not enough. Stress testing and a reconnection to the main project is absolutely necessary and should be considered at every step of the iterative design process.

Despite all of that, I’m incredibly appreciative of its presence. By making so many mistakes, I’ve been able to intuit how to write better code. It’s taught me how to walk through the thought process in making design choices, and now I feel comfortable explaining all my coding decisions.