我在每次渲染时动态生成顶点数组,之后我想删除这些数组。 glDrawArrays
是否立即将顶点数组复制到服务器?因此,在调用 glDrawArrays
后删除顶点数组是否安全?
float * vp = GetVertices(); // Regenerated on each render
glVertexPointer(3, GL_FLOAT, 3 * sizeof(float), vp);
glDrawArrays(GL_TRIANGLES, 0, nVertices);
delete[] vp; // Can I do this?
否则,我如何确定何时删除顶点数组是安全的?
最佳答案
是的,它会立即被复制,所以一旦你完成调用,你就可以对数组做任何你喜欢的事情。
此外,正如 dirkgently 指出的,您需要使用 delete[] vp
来删除数组。
关于c++ - 我可以在调用 glDrawArrays 后删除 OpenGL 顶点数组吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2212847/