0

私はopenglで立方体を作っています、そして私は立方体の側面にいくつかのテキストが欲しいです。以下のキューブのコードを取得しましたが、テキスト文字列を表示するにはどうすればよいですか?

    void drawBox()
{
    glBegin(GL_QUADS);

    glColor3f(1.0f, 0.0f, 0.0f);
    // FRONT
    glVertex3f(-0.5f, -0.5f, 0.5f);
    glVertex3f( 0.5f, -0.5f, 0.5f);
    glVertex3f( 0.5f, 0.5f, 0.5f);
    glVertex3f(-0.5f, 0.5f, 0.5f);
    // BACK
    glVertex3f(-0.5f, -0.5f, -0.5f);
    glVertex3f(-0.5f, 0.5f, -0.5f);
    glVertex3f( 0.5f, 0.5f, -0.5f);
    glVertex3f( 0.5f, -0.5f, -0.5f);

    glColor3f(0.0f, 1.0f, 0.0f);
    // LEFT
    glVertex3f(-0.5f, -0.5f, 0.5f);
    glVertex3f(-0.5f, 0.5f, 0.5f);
    glVertex3f(-0.5f, 0.5f, -0.5f);
    glVertex3f(-0.5f, -0.5f, -0.5f);
    // RIGHT
    glVertex3f( 0.5f, -0.5f, -0.5f);
    glVertex3f( 0.5f, 0.5f, -0.5f);
    glVertex3f( 0.5f, 0.5f, 0.5f);
    glVertex3f( 0.5f, -0.5f, 0.5f);

    glColor3f(0.0f, 0.0f, 1.0f);
    // TOP
    glVertex3f(-0.5f, 0.5f, 0.5f);
    glVertex3f( 0.5f, 0.5f, 0.5f);
    glVertex3f( 0.5f, 0.5f, -0.5f);
    glVertex3f(-0.5f, 0.5f, -0.5f);
    // BOTTOM
    glVertex3f(-0.5f, -0.5f, 0.5f);
    glVertex3f(-0.5f, -0.5f, -0.5f);
    glVertex3f( 0.5f, -0.5f, -0.5f);
    glVertex3f( 0.5f, -0.5f, 0.5f);
    glEnd();
}
4

2 に答える 2

2

どのように見せたいかによって、さまざまなアプローチがあります。

  • テクスチャでテキストを描画し、そのテクスチャを立方体面で使用します
  • GLut 関数を使用してテキストを 3D モデルとしてレンダリングする
  • openGL 以外の関数を使用して、正しい位置に 2D テキストを描画するだけです (立方体の頂点をスクリーン スペースに投影し、その位置をテキストの開始点として使用します)。

(そのような質問をする前に、Google OpenGLテクスチャリングチュートリアルとOpenGLテキストチュートリアル、そこにたくさんの情報があります...)

于 2011-06-06T09:37:11.387 に答える
1

チュートリアルとしてビットマップ フォントを使用します。

そのリンクを確認してください。

http://nehe.gamedev.net/lesson.asp?index=03

于 2011-06-06T09:39:20.123 に答える