【发布时间】:2010-11-07 10:36:16
【问题描述】:
我有一个很大的纹理图集,我在屏幕上绘制了很多纹理。目前,图集中的每个纹理都是使用如下代码分别绘制的:
GLfloat 坐标[] = { 布拉,布拉, 布拉,布拉, 布拉,布拉, 呜呜呜 }; GLfloat 顶点[] = { 布拉, 布拉, 布拉, 布拉,布拉,布拉 布拉,布拉,布拉 呜呜呜 }; glEnable(GL_TEXTURE_2D); glBindTexture(GL_TEXTURE_2D, 名称); glVertexPointer(3, GL_FLOAT, 0, 顶点); glTexCoordPointer(2, GL_FLOAT, 0, 坐标); glDrawArrays(GL_TRIANGLE_STRIP, 0, 4);所以我们用三角条来做这个。
现在,我只是尝试通过保存坐标/顶点来缓存这些类型的调用,并在一次调用中将它们全部绘制出来。但是 OpenGL ES 没有四边形,因此尝试使用三角形条意味着该操作会将它们全部合并在一起,并且您会得到从前一点开始在屏幕上扭曲的纹理。
我尝试了 glDrawArrays 和 glDrawElements 但我没有获得任何成功。这甚至可能吗?
【问题讨论】: