在OpenGL ES中,是否可以使用退化三角形(具有0區域的三角形)來分隔頂點數組中的TRIANGLE_FAN對象?或者只有TRIANGLE_STRIP纔有可能?OpenGL ES退化三角形與TRIANGLE_FAN?
如果答案是否定的,將多個TRIANGLE_FAN頂點數組繪製調用分爲一個的最佳方法是什麼?
在OpenGL ES中,是否可以使用退化三角形(具有0區域的三角形)來分隔頂點數組中的TRIANGLE_FAN對象?或者只有TRIANGLE_STRIP纔有可能?OpenGL ES退化三角形與TRIANGLE_FAN?
如果答案是否定的,將多個TRIANGLE_FAN頂點數組繪製調用分爲一個的最佳方法是什麼?
你是對的,答案是否定的,因爲所有三角形扇形三角形共享相同的頂點。
如果您想分批多個三角形風扇,最好使用Vertex Buffer Objects或VBO與GL_TRIANGLES
模式。將有一個小的索引緩衝區開銷,但它會提供更好的靈活性。
你也可以將你的表面三角化爲條而不是風扇。它將允許您使用退化三角形並將您的繪圖調用分組到一箇中。
如果你的表面是n-gon,那很簡單。只需改變頂點創建的順序。不是繞着中心走,而是選擇一個頂點來開始並通過在兩側迭代來生成其他頂點。這是一個Hexagon的例子。左圖像使用三角形條,中間使用風扇。
這不僅僅是一個答案而是一個評論。 – 2014-10-17 22:07:41
啊我沒有足夠的聲望發表評論:( – Milo 2014-10-17 22:26:02
似乎像一個捕獲22,但獲得這種聲譽的最佳方式是提出良好的問題,給出良好的答案,並對有問題的文本進行良好的編輯。每天限制200個信譽,並且獎勵和接受的答案不在此限制範圍內;) – 2014-10-17 22:36:49
謝謝,這有助於。此外,這裏是[另一個鏈接](http://www.learnopengles.com/android-lesson-seven-an-introduction-to-vertex-buffer-objects-vbos/)VBO特定於Android/Java OpenGL ES使用情況的信息有一些很好的例子。 – khiner 2013-04-06 02:40:02