目次 - 3.関数 - 3.4レンダラー
3.4 レンダラー
これらの関数はTTF_Fontを使って文字列をレンダリングする.
レンダリングには3つのモードがある:
-
ベタ(Solid)
-
速いが荒い
8bitパレットカラーのサーフェイスを生成し, 指定の文字列を指定のフォントと色で高速にレンダリングする.
ピクセル値0はカラーキーで, コピー時には背景になる.
ピクセルは1で, パレットの1番目にはテキストの前景色が設定される.
それにより再びテキストをレンダリングせずに色を変えられる.
パレットの0番目はカラーキーなので透明で, 実際は255から前景色のRGBのそれぞれの値を引いた色だが, 別のサーフェイスにコピーする場合は描画されない.
このモードのレンダリングが最も速い.
結果として背景色で囲まれていないが, テキストは滑らかではない.
生成されたサーフェイスは混合(Blended)のサーフェイスより速くコピーできる.
このモードはFPSを使っていて, 他より速く画面を更新できる.
-
陰影(Shaded)
-
高品質だがベタ塗りの中にある
8bitパレットカラーのサーフェイスを生成し, 指定の文字列を指定のフォントと色で高品質にレンダリングする.
ピクセル値0は背景で, 他のピクセル値は背景色から前景色に段階的に変化する色である.
結果として前景色のテキストの周りを背景色が囲んでいる.
テキストはアンチエイリアスされている.
このモードのレンダリングはベタ(Solid)より遅いが, 混合(Blend)モードと同じ速さである.
生成されたサーフェイスはベタ(Solid)と同じ速さでコピーできる. 高品質なテキストが必要で, 背景色で囲まれていてよければこのモードを使うとよい.
-
混合(Blended)
-
最も遅いが最も高品質
32bit ARGBのサーフェイスを生成し, 指定の文字列を指定のフォントと色でαブレンドしてレンダリングする.
結果としてサーフェイスはα透過で, テキストの周りをベタの色が囲んでいない.
テキストはアンチエイリアスされている.
ベタ(Solid)モードより遅いが, 陰影(Shaded)と同じ速さでレンダリングする.
生成されたサーフェイスの画面へのコピーはベタ(Solid)や陰影(Shaded)よりも遅い.
高品質が必要で, テキストがあまり変わらないときは, このモードを使うとよい.
ベタ(Solid)
- TTF_RenderText_Solid - LATIN1テキストをベタ塗りモードで描く
- TTF_RenderUTF8_Solid - UTF8テキストをベタ塗りモードで描く
- TTF_RenderUNICODE_Solid - UNICODEテキストをベタ塗りモードで描く
- TTF_RenderGlyph_Solid - UNICODEグリフをベタ塗りでモード描く
陰影(Shaded)
- TTF_RenderText_Shaded - LATIN1テキストを陰影モードで描く
- TTF_RenderUTF8_Shaded - UTF8テキストを陰影モードで描く
- TTF_RenderUNICODE_Shaded - UNCODEテキストを陰影モードで描く
- TTF_RenderGlyph_Shaded - UNICODEグリフを陰影モードで描く
混合(Blended)
- TTF_RenderText_Blended - LATIN1テキストを混合モードで描く
- TTF_RenderUTF8_Blended - UTF8テキストを混合モードで描く
- TTF_RenderUNICODE_Blended - UNICODEテキストを混合モードで描く
- TTF_RenderGlyph_Blended - UNICODEグリフを混合モードで描く
原文へのリンク
3.4 Render