2Dレンダリングの場合、キャンバスを作成するときの投影マトリックスと、テキストの位置を表すmovelviewを考えることができます。次のような正射影を設定します。
glOrtho(0.0F、windowWidth、0.0F、windowHeight、-1.0F、1.0F);
この投影法では、各単位は1ピクセルを意味します(glTranslate2f(120.0、100.0)は、テキストをピクセル(120、100)に配置します。この投影法は、画面の左下隅に(0,0)をマップします。あなたができる左上隅にそれをマップします:
glOrtho(0.0F、windowWidth、windowHeight、0.0F、-1.0F、1.0F);
テキストのレンダリング方法に関しては、OpenGLはデフォルトでそれをサポートしていません。つまり、フォントレンダリングライブラリを作成するか、既存のライブラリを使用する必要があります。その前に、テキストレンダリングのニーズを念頭に置く必要があります。フラットですか、それとも3Dですか。静的または変換(スケーリング、回転)などになります。
ここでは、長所と短所およびライブラリを使用したopenglテキストレンダリング手法に関する調査を見つけることができます:
http ://www.opengl.org/archives/resources/features/fontsurvey/
FTGLを使用してTTFフォントをレンダリングし始めましたが、libがゲームのパフォーマンスを破壊していました。そこで、私は自分のフォントライブラリを実装することに決め、TTFよりも優れていないテクスチャフォントを使用しましたが、それは私のニーズには問題ありませんでした。
私はこのプログラムを使用しました:http :
//www.angelcode.com/products/bmfont/ TTFフォントを取り、レンダリングに使用するテクスチャの各文字の位置、サイズ、およびパディングを含むテクスチャとファイル記述子をエクスポートします。
お役に立てば幸いです。