1

一生わからない何らかの理由で、私の JOGL hello world プログラムのテキストがまったく表示されません。表示方法を含めて、私が話していることをすべて理解できるようにします。

public void display(GLAutoDrawable gLDrawable)
    {
        final GL gl = gLDrawable.getGL();
        final GLU glu = new GLU();
        GLUT glut = new GLUT();
        gl.glClear(GL.GL_COLOR_BUFFER_BIT | GL.GL_DEPTH_BUFFER_BIT);
        gl.glLoadIdentity();
        glu.gluLookAt(0f,0f,0f,0f,0f,-800f,0,1,0);
        gl.glTranslatef(0.0f,0.0f,5.0f);
        gl.glColor3f(1f, 1f, 1f);

        gl.glRasterPos2f(250f,250f);

        glut.glutBitmapString(GLUT.BITMAP_HELVETICA_18, "Hello World!");

        gl.glFlush();
    }
4

3 に答える 3

1

これでいくつかの改造を試みましたが、何も表示できません。

gluLookAt 呼び出しは明らかに悪いものでした。カメラを (0,0,0) に配置し、z=-800 を向いていましたが、テキストを z=0 に配置しています。明らかに何も表示されません。

また、シーンをコンポーネントにマップするために通常行うべき glViewport() を呼び出していないことにも気付きました。

ここにあるのは、ほぼ確実に GL の問題であり、JOGL の問題ではありません。OpenGL プログラミング ガイドのトラブルシューティングのヒントを参照してください。コピーを持っておらず、重要な GL プログラミングを行う場合は、入手することをお勧めします。また、テキストを同じ場所に描かれたポリゴンに置き換えます。私がそれをしても何も表示されないので、それはほぼ間違いなくマトリックスの問題であり、あなたのテキストとは何の関係もありません. ポリゴンが表示されたら、それをテキストに置き換えることができます。一度に 1 つの問題を解消します。また、この質問に opengl タグを追加してみてください。これにより、専門の OpenGL プログラマーを惹きつけることができます。

于 2009-04-14T15:34:44.487 に答える