Portfolio

Page is a basic 3D first-person engine I am building in C++/OpenGL while using few external libraries. (Github link)

Torch  is a simple 2D roguelike I am making in C++/OpenGL without external libraries or most C++ features (essentially just using function and operator overloading). This was largely inspired by Handmade Hero, a project that seeks to build a professional game from scratch while explaining all of the code along the way. (Github link)

School Projects

Simple Raytracer — An offline raytracer I made as part of UMN’s Csci 5607 (Fundamentals of Computer Graphics I) that supports basic shapes (polygons, ellipsoids), stochastic soft shadows, recursive reflections, and transparency with refraction.

Animation & Planning in Games — Particle effect and cloth physics projects from UMN 5611.

Earthquake History — Simple demo for projecting historical earthquake data from a text file to a graphical planar/sphere representation.

Other projects have included motion capture guided character animation, animation pathing along splines, simple multi-agent planning (including discrete avoidance planning and Boids-style social forces/flocking), and collision detection using GJK.

In addition to the required course of CSCI 2021 (Machine Architecture and Organization), which explores low-level programming details including virtual memory implementations, caching, and x86 assembly, I took CSCI 4203 (Computer Architecture) as an elective, wherein projects focused on implementing hardware descriptions of simple operations, data forwarding, and pipelining.