頂点、テクスチャ座標、および法線を解析する OBJ ローダーを作成しました。それぞれが FloatBuffer に格納され、opengl に渡されます。
gl.glVertexPointer(3, GL10.GL_FLOAT, 0, fbVertices);
gl.glNormalPointer(GL10.GL_FLOAT, 0, fbNormals);
ただし、インデックス バッファを glDrawElements に渡す方法について困惑しています。インデックスは、頂点、テクスチャ、および法線の配列内のインデックスを参照することを読みましたが、OBJ ファイルの説明を読むと、顔は次のような形式で保存されているようです。
f 1/2/3 4/5/6 7/8/9
フォーマットは
vertice/texture/normal
glDrawElements は、3 つすべてを参照する必要がある 1 つのインデックスのみを受け入れますが、実際の OBJ ファイルを見ると、これは可能ではないようです。3つすべてのインデックスをどのように渡しますか?
ここでコードのコピーを見つけることができます: http://codepad.org/melc1HIC