Open GL - ES 2.0:动态改变颜色

时间:2012-02-28 21:29:32

标签: iphone opengl-es

在opengl es的大多数教程中,他们创建了一个包含几何体顶点的结构。此结构包含每个顶点的位置和颜色。然后将该顶点信息发送到顶点缓冲区,然后用于在屏幕上渲染几何体。我的问题是,如果我想在屏幕上绘制2个立方体,我是否需要创建2个不同的结构对象,或者我可以通过创建单个结构然后动态更改颜色来获得。

这是我的结构的定义

struct Vertex{
   float Position[3];
   float Color[4];
}

1 个答案:

答案 0 :(得分:0)

是的,您可以只使用结构的一个实例,绘制它,而不是更改它的颜色并再次使用另一个世界矩阵绘制它。虽然我认为这不会对表现有好处。

但最好的办法是创建一个结构的两个实例,每个结构包含不同的颜色,然后通过将平移矩阵乘以它们的世界矩阵,将它们绘制在不同的位置。