Recent Work
A fully interactive story about the criminal underworld of 1930s New York City and the prosecutors charged with bringing them down.
Handmade Hero
A complete, professional-quality game, coded from scratch on a live stream.
Recent Blog Entries
Papers I Have Loved (2016)
An invited lecture at the 2016 Papers We Love conference about papers I’d read that proved inspirational to new work.
How to Open a Black Box (2007)
A look back at the development of normal mapping technology as a motivating example of why understanding concepts at a deep level is important for game engine programming.
Are register names still useful?
Why do CPUs still take instruction streams encoded with register names?
Why Software Patents are Bad, Period.
An e-mail I wrote to a Stanford Law student a long time ago who asked me why programmers thought software patents were bad.
Fixing Multi-monitor and Multi-window OpenGL on Windows
A simple proposal for a wgl extension that makes multi-monitor and multi-window output on Windows clean and simple.