Skip to main content

Game years

In 2017 I quit my job to make a PC programming puzzle game Robo Instructus.

One aspect in particular I worked on in some depth was text rendering. Robo Instructus has a lot of text & there just wasn’t the libraries in the Rust ecosystem that could perform as I needed, particularly compiled in debug mode (and I’m not waiting for rust –release compiles after each code change!).

So I took over maintenance of rusttype and fixed my issues with it & its “gpu cache” module. I eventually rewrote it as ab-glyph. With that as a base I also wrote the glyph-brush crates which handle layout, clever caching and optimise the process of getting text strings into vertices pointing a subtextures on your GPU.

My open source libs allowed me to handle the profusion of text in my game, I’ve also seen them used in other rust game projects & engines which is nice! However, text rendering is surprisingly deep & complex so I’ve no doubt superior tools will appear in the rust ecosystem in time.

I wrote about some of my text rendering adventures on the game blog:

You can read more over at blog.roboinstruct.us.