opengl - 如果程序退出时无法删除顶点缓冲区对象,会发生什么情况?

标签 opengl vbo

在我读过的有关顶点缓冲区对象的所有文档和教程中,作者都​​特别提到您必须在应用程序退出之前删除 VBO。

如果程序崩溃或被终止而无法删除 VBO,VBO 会发生什么情况?它是否会一直保留在 GPU RAM 中直到计算机重新启动,或者 GPU 最终会恢复 VBO 占用的内存吗?

最佳答案

OpenGL 实现将清理所有未分配的对象。这并不意味着您应该将它们随意放置,但是您不需要采取措施来确保在发生特殊情况(即崩溃)时销毁对象。

关于opengl - 如果程序退出时无法删除顶点缓冲区对象,会发生什么情况?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7745857/

相关文章:

c++ - OpenGL:如何使用深度排序的顶点数组设计高效的渲染系统?

c++ - 为什么 glScaled(1, 1, 5) 会改变 glVertex3d(1, 1, 0) 的光照?

c++ - 在交错的 openGL 顶点缓冲区对象之间复制

ios - 着色器在 iOS 上看起来很糟糕但在 Windows 上很好

c - 使用带有 CG 和 openGL 的统一一维纹理参数时出错

c - 为 OpenGL 生成顶点数组

ios - 代码 : No matching function for call to glGenBuffers

c++ - 如何组成一个矩阵来执行世界坐标的等轴测(二轴测)投影?

c++ - OpenGL VBO 法线/光照问题

opengl - 如何使用 VAO/VBO 为相同顶点指定多个 UV 坐标?