2013-04-05 120 views
0

配料多矩形我目前通过四三角带迭代并单独绘制每一个经历很慢的表现,所以我想批量我所有的矩形成一个单一的绘制调用。在OpenGL ES

环顾四周,看起来最好的方法是简单地发生重复顶点的开销,并使用GL_TRIANGLES而不是GL_TRIANGLE_STRIP,只需为每个矩形绘制两个单独的三角形。

的问题是,每个矩形可以有不同的颜色,我需要以编程方式更改的任何矩形的颜色。所以简单地使用一个GL_TRIANGLES调用并不能解决问题。相反,它看起来像我需要以某种方式索引颜色数据与我的顶点数据,将颜色与每个矩形关联。我将如何去做这件事?

谢谢!

回答

1

可以使用点着色。

顶点可以各自具有多个数据信道,包括位置,颜色,(多个)纹理,正常,等等。

我建议你interleaving顶点包括其他后位置和颜色之一,直接。虽然你可以设置separate array of just colors并且这样做(只要确保你的位置与颜色正确对齐)。

(这些教程是面向iPhone的,但OpenGL ES代码应该可以在Android上正常工作)