2012-12-15 24 views
0

我試圖加載層格式如下:使用glDrawElements繪製這些數據時應該使用什麼參數?

0.000000 0.000000 -1.543509 0.000000 0.000000 -1.000000 0.838731 0.300864 106 34 22 
vertex pos/ normal dir/texture coords/ vertex color 

和麪定義是這樣的:

3 0 1 2 
how much vertices per face/ which vertex for x/ which vertex for y/which vertex for z/ 

然後我到一個頂點數組閱讀和麪部陣列,吸引他們這樣的:

//bind buffer first of course) 
glDrawElements(GL_TRIANGLE_FAN,vert_amount,GL_UNSIGNED_INT,faces); 

我使用opengles 1.1,所以我堅持TRIANGLE_FAN我猜,結果搞砸了,所以我想默認層面的定義是不適合對於opengl的權利?如果我想使用glDrawElements如何重新組織面孔?

這裏是層模型文件的簡單的立方體:

1.000000 1.000000 -1.000000 0.000000 0.000000 -1.000000 
1.000000 -1.000000 -1.000000 0.000000 0.000000 -1.000000 
-1.000000 -1.000000 -1.000000 0.000000 0.000000 -1.000000 
1.000000 0.999999 1.000000 -0.000000 0.000000 1.000000 
-1.000000 1.000000 1.000000 -0.000000 0.000000 1.000000 
-1.000000 -1.000000 1.000000 -0.000000 0.000000 1.000000 
1.000000 1.000000 -1.000000 1.000000 -0.000001 -0.000000 
1.000000 0.999999 1.000000 1.000000 -0.000001 -0.000000 
0.999999 -1.000001 1.000000 1.000000 -0.000001 -0.000000 
1.000000 -1.000000 -1.000000 -0.000000 -1.000000 -0.000000 
0.999999 -1.000001 1.000000 -0.000000 -1.000000 -0.000000 
-1.000000 -1.000000 1.000000 -0.000000 -1.000000 -0.000000 
-1.000000 -1.000000 -1.000000 -1.000000 0.000000 -0.000000 
-1.000000 -1.000000 1.000000 -1.000000 0.000000 -0.000000 
-1.000000 1.000000 1.000000 -1.000000 0.000000 -0.000000 
1.000000 0.999999 1.000000 0.000000 1.000000 0.000000 
1.000000 1.000000 -1.000000 0.000000 1.000000 0.000000 
-1.000000 1.000000 -1.000000 0.000000 1.000000 0.000000 
-1.000000 1.000000 -1.000000 0.000000 0.000000 -1.000000 
0.999999 -1.000001 1.000000 -0.000000 0.000000 1.000000 
1.000000 -1.000000 -1.000000 1.000000 0.000000 0.000000 
1.000000 1.000000 -1.000000 1.000000 0.000000 0.000000 
0.999999 -1.000001 1.000000 1.000000 0.000000 0.000000 
-1.000000 -1.000000 -1.000000 -0.000000 -1.000000 0.000000 
-1.000000 1.000000 -1.000000 -1.000000 0.000000 -0.000000 
-1.000000 1.000000 1.000000 0.000000 1.000000 0.000000 
3 0 1 2 
3 3 4 5 
3 6 7 8 
3 9 10 11 
3 12 13 14 
3 15 16 17 
3 18 0 2 
3 19 3 5 
3 20 21 22 
3 23 9 11 
3 24 12 14 
3 25 15 17 

回答

2

GL_TRIANGLE_FAN是錯誤的原始位置 - 一個三角形風扇具有由所有的三角形共享一個頂點固定。如果你只有三角形,GL_TRIANGLES是更好的選擇。如果沒有,請考慮進行三角測量或以其他方式構建三角形條。

相關問題