How do you prevent font blurring?

quackgyver

I make retro games for astrojone.com
Veteran
Joined
Jul 16, 2013
Messages
117
Reaction score
26
First Language
English
Primarily Uses
RMMV
How to you prevent font blurring in RPG Maker MZ?
 

quackgyver

I make retro games for astrojone.com
Veteran
Joined
Jul 16, 2013
Messages
117
Reaction score
26
First Language
English
Primarily Uses
RMMV
VisuMZ_CoreEngine -> Quality of Life settings -> Font Smoothing
That doesn't work. Blurring still occurs regardless of whether the Font Smoothing-setting is on or off:

Screen Shot 2021-08-22 at 16.44.44.pngScreen Shot 2021-08-22 at 16.45.31.png

By using bitmap fonts instead:
or,

I don't think it's a good idea to add a dependency that completely replaces the engine's default font behaviors with something fundamentally different if there's an easier way to achieve the desired effect.
 

quackgyver

I make retro games for astrojone.com
Veteran
Joined
Jul 16, 2013
Messages
117
Reaction score
26
First Language
English
Primarily Uses
RMMV

quackgyver

I make retro games for astrojone.com
Veteran
Joined
Jul 16, 2013
Messages
117
Reaction score
26
First Language
English
Primarily Uses
RMMV

caethyril

^_^
Global Mod
Joined
Feb 21, 2018
Messages
4,489
Reaction score
3,522
First Language
EN
Primarily Uses
RMMZ
:kaohi: I'm not an expert at this, but I thought I'd contribute~

I did some reading and it seems the blurring can be caused by various things, including:
  1. Non-integer render coordinates for the text on the target canvas;
  2. The browser's conversion of TrueType (i.e. vector) font data to pixel/shader data;
  3. System/application display scaling.
The usual solutions seem to be to:
  • Pre-rasterise the fonts, e.g. "bitmap fonts", or
  • Apply some kind of post-processing, e.g. sharpen and/or scale down.
I think pre-rasterisation is the best option here: as I understand it, font rasterisation is CPU-heavy, but bitmaps can almost be fed directly to the GPU.

I haven't tried either of the plugins @SigmaSuccour suggested or looked at the code of those plugins, but I imagine it would be relatively easy to implement without significant compatibility problems. The only way to be sure is to test it for yourself, though. :kaophew:

You might also want to remove the outline, if you don't already have a solution for that. I think this override in a plugin would suffice:
JavaScript:
Bitmap.prototype._drawTextOutline = function(text, tx, ty, maxWidth) {};
 

Latest Threads

Latest Profile Posts

I really, really want the Magic story to be good, but instead we got today's chapter of the most predictable mish-mash of tropes with almost no personality. I let go of the physical game years ago, but I can't seem to let go of the story.
Just finished watching the last of the Final Destination movies. I'm digging every last water bottle out of that old van :p
Put off learning to drive for so long, I hope I don't run into any of-fences ..... (quietly leaves)
I introduced a new character to Mintabelle's Wonderland. Fufu the Raccoon! She's supposed to be a motherly daycare attendant, but when the power goes out, she becomes a monster. Rumor among kids says she causes these outages herself...
After an entire year, finally made new story cutscenes. Ones that take place after the current last boss. Praise be.

Forum statistics

Threads
129,804
Messages
1,205,319
Members
170,912
Latest member
LaughingWilliam
Top