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
3,509
Reaction score
2,635
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 Posts

Latest Profile Posts

Beep-Beep-Motha-facka.gif

Just finished and uploaded the delivery truck base/sprite sheet. I've been steadily replacing the default assets with early modern alternatives. The air-ship for a biplane, horse-drawn wagon for a delivery truck, and next a sailboat for a steam-powered passenger liner (think of the SS Olympic and RMS Titanic).
I caught a shiny magikarp on pokemonGO today AND finally saw Detective Pikachu and it was so cute and I'm still so hype AHHHHH!!!
one of the coolest things I've learned from the forums is the ability to give yourself a hitbox. I have a move you can do on the fields. shoulder tackle. thanks to the forums, that tackle triggers self A switches on some events. NPC's and the environment now react to the tackle. awesome.
I really liked how this one turned out! :kaopride:
WYqMPf6.png

Character (Yes, this is a character): Nibiru the Primal Being from Yugioh.
Dragon Quest style enemy selection plugin work in progress:

Quest_Targeting.png

It's a simple targeting system from the NES era. Select an enemy group; single-target skills will target the first enemy in that group.

Quest-Targeting-Animated.gif

Forum statistics

Threads
121,946
Messages
1,145,357
Members
160,218
Latest member
Tarasyring
Top