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();
}
その後、ゆがんだ形状が得られますが、それらの無関係な頂点がなければ、何もレンダリングされません。