About me and this blog

I spent a decade studying mathematics in academia before switching to programming for a living. The majority of my professional career so far was spent developing Enlighten, a real-time global illumination solution for the games industry that’s integrated into the Unity engine (and various other engines/games).

Geomerics, the start-up that developed Enlighten, was acquired by Arm in 2013, and Arm subsequently discontinued development of Enlighten in 2017. One motivation for this blog is to have a place to write up technical details of how bits of Enlighten work, and some of the other things we learned along the way. But I will also stray into other areas of interest: graphics generally, (computer) vision, machine learning, music, mathematics, games (particularly card games) and game theory…

I mostly program in C++, with occasional forays into the GPGPU badlands. I live in Cambridge, UK, and am a second-generation programmer: my father writes and maintains some fairly widely used software.

You can find me on twitter @grahamhazel