flareteam / flare-engine

Free/Libre Action Roleplaying Engine (engine only)
http://flarerpg.org/
GNU General Public License v3.0
1.1k stars 187 forks source link

Feature Request: Render crisp fonts #1734

Open jtrees opened 5 years ago

jtrees commented 5 years ago

I believe the engine currently has an internal resolution at which it renders stuff and then upscales or downscales accordingly to meet the client's target resolution. This is a reasonable approach for pre-rendered graphics but has the side effect of making text quite blurry. If rendering of text could be handled independently of the scaled graphics, fonts could be rendered crisply, maximizing readability.

dorkster commented 5 years ago

This is definitely something I've wanted for a while, but just haven't come up with a good idea for implementing it. Something like this would be a huge boon towards making the game look "professional", and would benefit the readability of languages with complex glyphs (e.g. Japanese).

Here are my two ideas for how to approach this:

jtrees commented 5 years ago

I think something like the second approach should be sufficient. However, I suggest the following adjustment:

The second layer doesn't just handle text but rather the entire UI, including menus and tooltips, etc. This way there should never be any issues with graphics overlapping text.

dorkster commented 5 years ago

The second layer doesn't just handle text but rather the entire UI, including menus and tooltips, etc. This way there should never be any issues with graphics overlapping text.

The problem with this is that the UI graphics are still raster images. So even if we made higher resolution UI graphics, they would still need to be scaled at some point. In contrast, the text layer could always be 1:1 with the window size.

jtrees commented 5 years ago

Perhaps using a library (e.g. MyGUI) would help?