Update README.md
This commit is contained in:
parent
4b87ba76fe
commit
7d0cec62c8
@ -5,7 +5,16 @@ benefits of oversampling. It will try to use arial.ttf from the
|
|||||||
Windows font directory unless you type the name of a .ttf file as
|
Windows font directory unless you type the name of a .ttf file as
|
||||||
a command-line argument.
|
a command-line argument.
|
||||||
|
|
||||||
## About oversampling
|
## Benefits of oversampling
|
||||||
|
|
||||||
|
Improving subpixel has a few benefits:
|
||||||
|
|
||||||
|
* Text can remain sharper while still being sub-pixel positioned for better kerning
|
||||||
|
* Horizontally-oversampled text significantly reduces aliasing when text animates horizontally
|
||||||
|
* Vertically-oversampled text significantly reduces aliasing when text animates vertically
|
||||||
|
* Text oversampled in both directions significantly reduces aliasing when text rotates
|
||||||
|
|
||||||
|
## What text oversampling is
|
||||||
|
|
||||||
A common strategy for rendering text is to cache character bitmaps
|
A common strategy for rendering text is to cache character bitmaps
|
||||||
and reuse them. For hinted characters, every instance of a given
|
and reuse them. For hinted characters, every instance of a given
|
||||||
@ -43,9 +52,10 @@ So, setting oversampling of 2x2 in stb_truetype is equivalent to caching
|
|||||||
each character in 4 different variations, 1 for each subpixel position
|
each character in 4 different variations, 1 for each subpixel position
|
||||||
in a 2x2 set.
|
in a 2x2 set.
|
||||||
|
|
||||||
The advantage of this formulation is that no changes are required to
|
An advantage of this formulation is that no changes are required to
|
||||||
the rendering code; the exact same quad-rendering code works, it just
|
the rendering code; the exact same quad-rendering code works, it just
|
||||||
uses different texture coordinates. (Note this does potentially increase
|
uses different texture coordinates. (Note this does potentially increase
|
||||||
texture bandwidth for text rendering since we end up minifying the texture
|
texture bandwidth for text rendering since we end up minifying the texture
|
||||||
without using mipmapping, but you probably are not going to be fill-bound
|
without using mipmapping, but you probably are not going to be fill-bound
|
||||||
by your text rendering.)
|
by your text rendering.)
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user