Oh my god, Rod and I have spent an entire day trying to figure out how we’re going to do fonts in Brainsss. You have to understand, this is spending a day figuring out HOW to get fonts in the game, not actually getting the fonts into the game.
So many little quirky things came up and I honestly can’t recall all the problems we encountered. Some had to do with Unity issues, others had to do with the amount of subtleties in our fonts.
One of the first things we ran into was that Unity didn’t want to read our font correctly because it was custom built. But wait, other programs like Photoshop could read the font perfectly fine. After a lot of stumbling around, we had to rebuild our custom font with a font editor so that Unity could read it correctly.
Then we had to decide if we wanted Unity to handle our fonts or if we wanted do to each font as a texture. Having Unity do the fonts would be WAY simpler but we realized early on that we wouldn’t get the customization with our fonts.
Why would we need customization? It’s because of drop shadows, the different colors, and the borders around fonts. These were all features we would like to have in our game.
When I first start the project, I was naive, and thought Unity GUI system would magically manage all of our fonts. But in reality I was an uneducated buffoon.
What we ended up deciding on is hand building each set of fonts. This is complete pain in the ass but it means we can have all the details we want in our fonts, as long as we have the texture space. For every font variation, including size, I have to build a texture sheet that includes color and alpha information. I then export the font as a texture map, and Unity cuts it up and spits it on the screen. Then I have to adjust spacing between letters by hand.
Why am I doing a post about this? Probably just for my own sanity. Years from now, I will be able to load this post to remember all the troubles we ran into trying to develop Brainsss.