0

私はOpenGLで単純なフォントレンダラーを実装していますが、それに関していくつか質問があります

基本的に、文字が含まれる画像をOpenGLテクスチャにロードします

  • すべてのキャラクターを含む1つの大きなテクスチャを使用する方が良いですか、それともキャラクターごとに1つのテクスチャを使用することもできますか?

  • 大きなテクスチャを使用すると、テクスチャから1文字のクワッドを正しく描画する方法がわかりません。

テクスチャ全体が256*256で、各文字が16*16であるとします。

16 * 16のクワッドを描画し、そのテクスチャから1つの文字をマップしたい

私は試しglTexCoord2f()ましたが、それは0-1の範囲でのみ機能します

4

1 に答える 1

3

1.-すべてのキャラクターで1つの大きなテクスチャを使用する方がパフォーマンスに優れています。これはテクスチャアトラスと呼ばれます。

2.-テクスチャ座標を取得するには、ピクセル座標から幅と高さで割ったテクスチャ座標に変換します。たとえば、ピクセル(16、16)にはテクスチャ座標(16 / 256.0、16 / 256.0)があります。

于 2010-10-16T15:53:00.840 に答える