0

JoGL で OBJ モデル ローダーに数日間取り組んでおり、配列描画で頂点を取得できdraw[face][vertex][x,y,z,or w]ます。この配列 (つまり VBO) をレンダリングする方法をいくつか試しましたが、これまでのところうまくいきませんでした。ループ内で顔をレンダリングしようとしましたが、プログラムを実行しても何もレンダリングされません。これが私のコードです:

 for(int i = 0; i < draw.length; i++){
        gl.glBegin(GL.GL_TRIANGLE_STRIP);
            //start drawing
            for(int i2=0;i2<draw[i].length;i2++){
                float[] xyzw = new float[4];
                //grab all the vertex values
                for(int i3=0; i3<draw[i][i2].length;i3++){
                    xyzw[i3]=draw[i][i2][i3];
                }
                gl.glColor3f(1.0f, 0.0f, 0.0f);    // Set the current drawing color to red
                gl.glVertex3f(xyzw[0], xyzw[1], xyzw[2]);
            }
        gl.glEnd();
    }

奇妙なことは、私がこれを行う場合です:

    for(int i = 0; i < draw.length; i++){
        gl.glBegin(GL.GL_TRIANGLE_STRIP);
            //start drawing
            for(int i2=0;i2<draw[i].length;i2++){
                float[] xyzw = new float[4];
                //grab all the vertex values
                for(int i3=0; i3<draw[i][i2].length;i3++){
                    xyzw[i3]=draw[i][i2][i3];
                }
                gl.glColor3f(1.0f, 0.0f, 0.0f);    // Set the current drawing color to red
                gl.glVertex3f(xyzw[0], xyzw[1], xyzw[2]);
                gl.glVertex3f(0.0f, 0.0f, 0.0f);   // Top
                gl.glColor3f(0.0f, 1.0f, 0.0f);    // Set the current drawing color to green
                gl.glVertex3f(1.0f, 0.0f, 1.0f); // Bottom Left
                gl.glColor3f(0.0f, 0.0f, 1.0f);    // Set the current drawing color to blue
                gl.glVertex3f(0.0f, 0.0f, 1.0f);  // Bottom Right 
            }
        gl.glEnd();
    }

その後、ゆがんだ形状が得られますが、それらの無関係な頂点がなければ、何もレンダリングされません。

4

1 に答える 1