質問

簡単なことを書いています OpenGL を使用するアプリケーション GLUT. 。独自のフォント レンダリング コードを使用したくなく、代わりに付属のシンプルなビットマップ フォントを使用したいと考えています。 GLUT. 。それらを機能させるにはどのような手順を踏めばよいでしょうか?

役に立ちましたか?

解決

GLUT ビットマップ フォントを使用すると、OpenGL で簡単なテキスト表示を行うことができます。これらはシンプルな 2D フォントであり、 ない ディスプレイに適した 内部 あなたの 3D 環境。ただし、表示ウィンドウにオーバーレイする必要があるテキストには最適です。

Eric Cartman のお気に入りの引用を GLUT ウィンドウに緑色で表示するサンプル手順を次に示します。

ラスター位置を画面座標で設定します。したがって、2D レンダリング用に投影行列とモデルビュー行列を設定します。

glMatrixMode(GL_PROJECTION);
glPushMatrix();
glLoadIdentity();
gluOrtho2D(0.0, WIN_WIDTH, 0.0, WIN_HEIGHT);

glMatrixMode(GL_MODELVIEW);
glPushMatrix();
glLoadIdentity();

フォントの色を設定します。(後で設定するのではなく、今すぐ設定してください。)

glColor3f(0.0, 1.0, 0.0); // Green

テキストを表示するウィンドウの位置を設定します。これは、画面座標でラスター位置を設定することによって行われます。ウィンドウの左下隅は (0, 0) です。

glRasterPos2i(10, 10);

フォントを設定し、文字列文字を表示します。 グルビットマップ文字.

string s = "Respect mah authoritah!";
void * font = GLUT_BITMAP_9_BY_15;
for (string::iterator i = s.begin(); i != s.end(); ++i)
{
    char c = *i;
    glutBitmapCharacter(font, c);
}

行列を復元します。

glMatrixMode(GL_MODELVIEW);
glPopMatrix();

glMatrixMode(GL_PROJECTION);
glPopMatrix();
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top