とりあえず、GetGlyphOutlineでグリフイメージを取得してテクスチャにして、四角いポリゴンに貼るところまではできた。
で、右の画像。
左側が、文字テクスチャで、
フォントサイズが100Point、
5階調のアンチエイリアス、
サイズは128*128pixel、
α値のみのテクスチャ。
比較として、右側は、
同じくGetGlyphOutlineで
アウトラインフォントをポリゴン化したもの。
曲線部分は3つの直線に分割して近似、
ポリゴン数106、頂点数104。
右下の小さいのは、これのワイヤーフレーム表示。
ここまで大きく表示すると、
さすがにフォントサイズ100でも、荒さが目立つ。
それに対して、ポリゴン化したやつは、近似が荒いわりには意外ときれいに見える。
メモリのサイズとしてはポリゴン化のほうが省メモリっぽいが、
速度的には、やっぱりテクスチャのほうが速いのだろうか。
んー、
128*128pixのαチャンネルのみだから、メモリサイズは約16.4kB、
半角文字ならサイズ半分なんだろうけど、そこはひとまずおいといて、
256文字だと合計で約4.2MB・・・。
まぁこのくらいなら、今時ならそれほど問題にならないサイズだろうか。
0 件のコメント:
コメントを投稿