
Higher Quality 2D Text Rendering (2013) - mpweiher
http://jcgt.org/published/0002/01/04/
======
metajack
If you're interested in this, I recommended reading about Patrick Walton's
work on Pathfinder:
[https://pcwalton.github.io/2017/02/14/pathfinder.html](https://pcwalton.github.io/2017/02/14/pathfinder.html)

~~~
xiconfjs
it's missing the images :(

~~~
xzn92
Try the wayback machine:

[https://web.archive.org/web/20170215003338/http://pcwalton.g...](https://web.archive.org/web/20170215003338/http://pcwalton.github.io/blog/2017/02/14/pathfinder/)

------
ggambetta
Back when I was making games (and game engines), whenever I had to render
text, I used freetype to render to a memory buffer, and uploaded that as a
texture. Two triangles / one quad per "label".

For this use case, where text labels don't change that often or are that many,
the approach suggested in the article (two triangles / one quad per glyph, and
having to do kerning by hand) sounds unnecessarily complex.

~~~
planteen
Were you still rendering individual glyphs into a font cache and then
rendering those textures into a single text texture? It seems like it would be
pretty expensive to always render each individual glyph from the font engine
every time instead of caching the results.

~~~
ggambetta
No, just rendering the string every time it changed. For the kind of games I
was making, text didn't change that often, so caching it worked fine.

------
kuwze
There is also the Slug library[0] for anyone interested. It is based on this
paper[1].

[0]: [http://sluglibrary.com/](http://sluglibrary.com/)

[1]:
[http://jcgt.org/published/0006/02/02/](http://jcgt.org/published/0006/02/02/)

------
kevin_thibedeau
Seems like FreeType auto hinting is broken if it shifts the right vertical
stroke over by one column for no clear reason. The inner portion of the loop
has less then 50% coverage.

------
nofunsir
"This document is trying to connect to: [http://jcgt.org"](http://jcgt.org")
Come on, guys.

