Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve text rendering #62

Open
ForNeVeR opened this issue Apr 9, 2023 · 0 comments
Open

Improve text rendering #62

ForNeVeR opened this issue Apr 9, 2023 · 0 comments
Labels
enhancement New feature or request help wanted Extra attention is needed

Comments

@ForNeVeR
Copy link
Owner

ForNeVeR commented Apr 9, 2023

Currently, our text rendering (in places we need text: main menu and help) is pretty awful.

Why?

Because of several problems.

  1. MonoGame doesn't seem to properly handle font kerning (even though it is enabled in our .spritefont, it is clear it is not taken into account when rendering).

  2. We use a weird technique for resizing of the game content.

    We need this because the original game content has a pretty small size, and we currently render it in the original size and then resample it to fit the screen better.

    We uniformly use the same approach for everything we render, and this means the fonts have much worse quality than they could, provided the user's screen size.

  3. I'm not sure what happens with font antialiasing and subpixel antialiasing in MonoGame, but that leads to letters not having good quality.

What can we do?

  1. Render fonts to a separate render target (or directly to the screen), for them to have normal quality.
  2. Investigate antialiasing settings (if any) in MonoGame, and choose the best one.
  3. See this note on using of the multi-channel distance fields (yep, that's a thing!) in MonoGame. There's a couple of accompanying repositories for the note.
@ForNeVeR ForNeVeR added enhancement New feature or request help wanted Extra attention is needed labels Apr 9, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

1 participant