我想在OpenGL中使用纹理构建闪电。为此,我必须绘制一些三角形,这些三角形在一个X | Y点上连接,因此三角形从最后一个末端开始。这就是我想连续绘制矩形的原因,现在我想问一下:
哪个抽奖通话时间更长?第一个有6分。在第二次,我两次调用该函数两次,持续3次。
gl.glDrawArrays(GL10.GL_LINE_STRIP, 0, 6); // Both recatangles
/or this here
gl.glDrawArrays(GL10.GL_LINE_STRIP, 0, 3); // One rectangle
gl.glDrawArrays(GL10.GL_LINE_STRIP, 0, 3); // One rectangle
第一次打电话要快得多还是没关系?
编辑:我的功能是生成每帧调用的随机点:
public void update()
{
for(int i = 0; i < STEPS; i += 3)
{
float rnd = random(); // creates random number
if(points[i] + rnd < startX + 5 && points[i] + rnd > startX - 5)
{
points[i] += rnd;
}
}
vertexBuffer.clear();
vertexBuffer.put(points);
vertexBuffer.position(0);
}
这对性能有害吗?或者我怎样才能做得更好?