This is my personal site with information on various projects I’m working, I’ll probably eventually set up some kind of tech blog here as well.


  • Scripting Language

    I wrote a scripting language in Rust that I use for all my game dev projects.

    It’s statically typed but with type inference, has an incremental garbage collector, and compiles down to a bytecode I wrote so that it can be executed by a virtual machine I also wrote in Rust. This makes it super easy to hot swap out scripts in game without reloading the whole game, and also made it pretty easy to set up a read eval print loop. I’m not ready to release it publicly yet, but here’s a few snippets to show it off:

    use dbg;
    fn main() {
        dbg::println("Hello, world!");
  • Way Of Rhea

    I’m currently building a narrative puzzle game Way of Rhea, more info here. The game is being built in my engine.

    The original prototype pictured below was built in nine days using in house tech for a Playcrafting expo.


  • Neural Interface

    I worked on CTRL-labs’ neural interface from 2017-2019, Wired and National Geographic already have good write ups on the project so I’m not gonna duplicate that content here.

    As Tech Lead of the Apps/SDK teams, my work primarily revolved around making the device accessible to game developers–primarily through a Unity SK that I built–and then testing it out by building demo games. That being said, there were only around ~20 people when I originally joined, so I ended up doing a little bit of everything from modifying how how EMG data was interpreted to building miscellaneous internal tools.

    Me, controlling Pong without a controller. Photo by Alex Welsh.
  • Game Engine

    I’ve been working on a game engine for a while, written in Rust and primarily powered by my scripting language. It’s also the technology behind Way of Rhea. Here’s some screenshots of a renderer I built for the project back when I was working in C++ (the scene is just a bunch of rectangular prisms with some Pixar textures on it, obviously with better art it’d be a little more impressive):

    I know what you’re thinking–waay too much bloom. IIRC I was testing out an adaptive exposure shader, and took this screenshot right after turning away from a dark area.
  • Misc

    Sometimes I make random stuff, like art assets for games. This page is just some stuff that didn’t really fit in anywhere else.

    I was jealous of Firewatch's trees so I made a low poly tree (440 tris) with some free textures from because it was too snowy to go out and photograph leaves.
    I made a cool looking guitar..for some reason.