Unity Plugin -- IK Solver (C++)

Programmed in C++ in the fall of 2024, this Unity Plugin solves a fundamental early problem across game genres: In worlds with uneven terrain, how can we prevent our characters’ animations from clipping into the floor? With Inverse Kinematics, that’s how! Given the desired position of our feet, we can calculate the angles of our hip and knee joints such that our model’s rig stays firmly anchored to the earth below it.

Hexagon Minecraft Proof of Concept (C#)

In early 2024, I became curious about the tiling nature of hexagons. They are, other than triangles and squares, the only such 2D normal polygonal shape. I fell into the challenge of programming an infinite hexagonal tiling world, and after one week this was the result. Complete with optimized chunking and CPU parallel terrain generation, this infinite world proof of concept is sure to impress! Click here to play the game and here to view its codebase.

OBJ Loader, Parallel Rasterization (C++)

Using OpenGL and C++ QT threading, this Rasterizer optimizes its 3D display of your loaded in object for stunning speed! Well, it’s not really that fast, but for a first time implementation of a 3D engine I still think it was pretty nifty. As the semester’s progressed, I’ve continued to implement further fragment and vertex shaders, mesh data structures, and rendering optimizations.   

GPU Instanced Grass (C++, GLSL)

This Minecraft clone was a group project, with the three of us spending roughly one month on the recreation and additional features. My personal feature work included the GPU instanced grass, which draws thousands of grass blades blowing in the wind every frame, and the smooth terrain effect, which interpolates vertex data between blocky and smooth at the press of a button.

Scroll to Top