背景:我正在開發一個應用程序,實際上繪製了一個巨大的3D節點和邊緣圖。節點繪製爲實例化立方體,而邊緣繪製爲GL_LINE
,並用幾何着色器擴展爲由三角形條構成的三維立體「線條」。目前,我每次重繪邊緣時都會執行此擴展。然而,由於我的圖形完全是靜態的(節點不能移動,因此邊緣也不能移動),我認爲我只需要將定義擴展爲三角形一次,將擴展頂點捕捉到緩衝區中(使用Tranform反饋),然後從這一點開始,使用基本類型爲GL_TRIANGLE_STRIP
的glMutliDrawArrays
使用捕獲的頂點繪製邊緣。使用均勻跨度時glMultiDrawArrays的替代方法?
問題:我繪製的所有這些體積線包含10個頂點。然而,glMultiDrawArrays
需要一個起始索引和計數大小的數組,基本上描述了每個基元的起始點和計數(在元素中)。由於我的原始圖形的大小都不一樣,所以我會在起始索引&個計數中做出看似不必要的清單。 OpenGL提供了什麼樣的功能,可以讓我簡單地指定在什麼樣的基本重新啓動的情況下(在元素中)?
+1解釋你爲什麼需要它。 – 2013-03-19 23:00:44