我想绘制一个带有大网格的网格(想想〜120k顶点)。
如果我尝试将所有顶点放在一个索引缓冲区中它将无法工作,因为我使用java.nio.ShortBuffer
作为索引缓冲区,所以最大值是2 ^ 15 - 1,而我需要~2 ^ 17个顶点。我应该将网格拆分成多个部分吗?我可以使用Buffer
的其他子类作为GL10.glDrawElements
的第四个参数吗?
答案 0 :(得分:1)
大量编辑以下miniBill评论!
事实上,OpenGL-ES仅支持GL_UNSIGNED_BYTE
或GL_UNSIGNED_SHORT
索引。
最常用的是GL_UNSIGNED_SHORT
,它允许2 ^ 16-1个顶点。其他类型仅由OpenGL支持。
<击>
您也可以使用GL_INT
或GL_UNSIGNED_INT
作为索引,我想,您可以将其存储在java.nio.IntBuffer
中。
击>
您似乎需要拆分几何体。