Full UI Upscaling, Part 4: Simpler Lightweight Fonts

Grid Sage Games | Cogmind |

Experience sci-fi tactical combat and exploration in an engaging procedural world that blends classic roguelikes with an innovative modern interface like no other! Craft your robot from components gathered or salvaged from other robots; attach power sources, propulsion units, utilities and weapons in various configurations until it fits your play style - from slow tanks armed to the teeth to speedy flyers zipping past enemies before they have time to react, to stealth sword-wielding assassin/hackers or any combination you create from salvage - every scenario may present itself when components become lost; be your ultimate control when exploring an open world filled with robots! You are the Cogmind; learn what that means as you explore an ever-evolved world ruled by them all!
 

  • View media
Post news Report RSS Full UI Upscaling, Part 4: Simpler Lightweight Fonts

More engine features! Implementing automated upscaling to simplify map zooming and larger user interface options as well as to enhance quality-of-life features is another enhancement that adds quality-of-life features.

Assuming we have developed our theories and mockups as planned and have established the necessary architecture... Surely the time has come to start building out the UI layout? Not so quickly!

"While we could begin the project immediately, I foresaw an increasing need for another supporting feature and saw this as an ideal time to automate Cogmind's font scaling".

Cogmind has long featured an assortment of fonts at different sizes, all stored as bitmaps for maximum pixel-perfect crispness. Each font needs its own image file and I manually scaled them up so they are available at higher resolutions - meaning even more files!

Well with the advent of map zooming requiring 2x upscaled versions of all fonts within each set and this entire UI upscale project, which offers an average 33% font size increase to all, we will require many additional upscaled bitmap font files - it would not make sense to manually produce these fonts any longer.

REX is back, again Once again I will revisit REX for major revision since beginning map zoom and user interface scaling work on REX in October 2016. This time is expected to bring major updates like map zooming improvements as well as changes to user interface scaling (xD).

Hello REX. Although this feature I was trying to implement would seem straightforward at first, it turned into quite the lengthy project because of rewriting much of the font handling code within the engine, including some challenging bugs along the way. Assumptions made in the original system would no longer hold, and I wanted additional features on top of autoscaling such as only creating scaled fonts when they're actually needed (yay for faster startup), or making all font sets that used the same source file share a single reference image instead of having multiple copies in memory - though these modifications had their own specific challenges related to changing architecture in order to accommodate for them.

Once again in my dependable REX testing environment, I set out to explore two new syntax options for font set configuration files:

Cogmind Applications

Cogmind's last public release, Beta 12, includes a total of 118 bitmaps font images, and that was before all the map zooming and Beta 13 work, so without this autoscaling feature that number would balloon significantly.

As of writing, Beta 13 has currently dropped that file count to 80, this despite the zooming, nine brand new font types, and supporting even more large options derived from smaller ones.

I had to spend a while going back through all those files to confirm which were original files and which were upscaled--in most cases there were records, but I had to be sure, and did find a few outliers to which I made further manual modifications to their upscaled versions, or sourced from multiple different sets. Those required special treatment, but otherwise it was really nice to cut down on the clutter.

Post a comment

Your comment will be anonymous unless you join the community. Or sign in with your social account: