glDeleteFramebuffers显式调用

时间:2014-07-07 14:06:46

标签: opengl fbo

在OpenGL教程中,我从未见过有人在程序结束前调用glDeleteFramebuffers

我应该在关闭申请前删除FrameBuffer吗?或者OpenGL驱动程序会为我做这个吗?

P.S。关于纹理glDeleteTextures的相同问题。

1 个答案:

答案 0 :(得分:0)

当该进程退出时,驱动程序将释放与进程的OpenGL对象关联的所有资源。如果应用程序在没有清理的情况下退出,您不必担心系统范围的泄漏。

即使机制不同,行为也非常类似于内存分配。如果在退出之前没有释放所有动态分配的内存,则应用程序分配的所有内存仍将返回给系统。 (*)

尽管如此,我认为在退出之前明确清理所有资源通常是一种很好的方式。如果您使用检测内存泄漏的工具,它也会有所帮助。

(*)我在谈论现代的全功能操作系统,就像它们通常用在台式电脑,智能手机或平板电脑上一样。我可以想象在最小的操作系统上可能不是这样。