2010-12-03 68 views
3

我正在開發一個帶有OpenGL ES 2.0的Android應用程序。從Wavefront OBJ格式加載'索引'

我想加載使用Wavefront OBJ格式的Blender 2.49b進行的導出。我已經確定了verxtex的位置,正常和紋理。我想要使​​用glDrawElements(GLenum模式,GLsizei計數,GLenum類型,常量GLvoid *索引)繪製我的網格,但我不知道如何從Wavefront OBJ文件中獲取最後一個參數,索引。

面對我正在尋找的'指數'?

我在一個論壇上發現了這個: faces =從1開始的索引!

'starting with 1!'是什麼意思?

感謝。

回答

3

這意味着第一個索引是1而不是零。 Java/C數組/集合使用基於零的索引,第一個元素從零開始。波前OBJ格式索引從1開始。

面由3個值組成,v/vt/vn是索引。索引沒有直接以文件格式指定。相反,它是v,vt,vn元素在文件中出現的順序。所以當你解析文件時,你必須記錄你遇到的頂點,頂點紋理和頂點法線的數量。

有關格式的所有細節,您可以參考規範。

http://www.martinreddy.net/gfx/3d/OBJ.spec