Project Highlights
Holonomy
Made in 48 hours for the GMTK Game Jam, my platformer achieved 2nd place among over 6,000 competing game jam entries. This game demonstrates novel graphics techniques, allowing the 2D player character to navigate on the surface of a 3D world. Custom physics logic allows the 2D physics of the player to interact seamlessly with the geometry of the 3D environment. The game features a striking visual style, implemented via custom material and post- processing shaders.
Fuzzpaint
A work-in-progress vector graphics software aimed at digital artists, written in Rust and featuring graphics acceleration with the Vulkan API (formerly C++ and OpenGL 4.0). The aim is to make working with vector graphics as intuitive as working with raster images, but allowing for editing capabilities and visual effects impossible in a traditional layered image editing workflow - for example, retroactively modifying brush settings after a drawing is complete.
Over several iterations, I have implemented features including dynamic tesselation of vector objects in a compute shader, signed distance field effects, and efficient rendering of mixed objects of differing shader materials.
Other itch.io Games
I have taken part in many online game jams, each project using the time-limited opportinuty to explore a new aspect of game development. From platformers with portals to UI based strategy, digital art to sound design, these sprints have helped me expand my abilities as a designer and developer.
NEShade
A (yet unreleased) NES emulator providing the user the ability to create and share custom graphics packs. Planned features include allowing the user to add particle effects, lighting, raymarched 2D shadows, PBR textures, screenspace effects, etc. to their favorite vintage games.
This is an exciting deep-dive into pixel-perfect rendering as well as hardware emulation, and I can't wait to show it off!
This site!
With HTML and CSS written by hand with helper scripts compiled with npm, this page represents many of my goals in software development. Thanks to an obsessive attention to memory footprint and performance without compromising form, function, nor acccessibility, this page - scripts, styles, images and all - is under 150kB. This is much smaller than the 2480kB median as reported by HTTP Archive - taking just 6% the bandwidth to display, decreasing load times and saving energy.
The interactive animation at the top of this page
was built in Rust using
wasm-pack. It features graphics acceleration using WebGL2, with animation
running on the GPU through some rather esoteric use of
TransformFeedback
shaders to perform compute-like physics!
Skills
Content contentblah blah
blah blah
blah blah
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse ac fermentum leo, a malesuada erat. In sit amet ante lobortis, posuere libero non, vulputate orci. Praesent blandit massa lorem, vitae ornare odio pellentesque vitae. Nunc imperdiet augue dui, sit amet hendrerit mi luctus in. Nullam convallis tortor finibus lacinia imperdiet. Vivamus justo odio, lacinia pharetra cursus vel, malesuada at tortor. Curabitur quam risus, auctor et sollicitudin vel, tincidunt sed diam. Praesent massa ante, rhoncus eu nisi vel, luctus mollis felis. Donec bibendum, turpis et dignissim hendrerit, justo libero porttitor nunc, sit amet ullamcorper dui elit id lorem. Aliquam accumsan quam et auctor pretium. Duis sit amet magna magna.