为什么glDeleteVertexArraysOES这么慢?

时间:2018-10-10 07:45:32

标签: ios performance opengl-es-2.0

我们发现在较旧的硬件上,例如,调用glDeleteVertexArraysOES的速度大大降低了使用OPENGL ES2.0的Ipad4。

我们使用VAO来存储我们渲染的每个对象,例如一行文字。当此文本更改时,我们将删除名为glDeleteVertexArraysOES的VAO,首先删除其持有的所有缓冲区。然后,我们重新创建新的VAO来保存新文本。很快使用VAO的渲染也更快,更简单,但是仅调用glDeleteVertexArraysOES(1,&buffer)会有很大的延迟。最多可能需要300毫秒。

这是正常现象吗,怎么回事?我们该如何解决?是否需要删除缓冲区,还是可以不删除缓冲区就重新使用缓冲区?

谢谢

Shaun Southern

0 个答案:

没有答案