我有一个顶点属性数组GLfloat *vxData
。我已经绑定了正确的索引数据GL_ARRAY_BUFFER
和正确的索引数据,并且初始顶点成功渲染。GL_ELEMENT_ARRAY_BUFFER
vxData
在每个渲染步骤中,我都会:
glBindBuffer(GL_ARRAY_BUFFER, buffers[0]);
glBufferData(GL_ARRAY_BUFFER, vxDataSize, vxData, GL_STATIC_DRAW);
glDrawElements(...)
在某个阶段,vxData
更改大小以容纳更少/更多的顶点,重新创建索引数据以反映这一点,并vxDataSize
进行更新。对于在数据发生这种变化后立即进行的渲染,简单地调用上面的相同行是否正确?
我知道其他可能性,例如使用glMapBufferOES
,我只是想知道以上在这种情况下在技术上是否正确。