[PyOpenGL-Users] glDeleteBuffers() and arrays.vbo
Brought to you by:
mcfletch
From: Dan H. <Dan...@no...> - 2009-07-24 23:59:36
|
Hi all, I may have found a bug in PyOpenGL's arrays.vbo module, but it could be a problem with my code or system. When a vertex or other buffer is automatically deleted by PyOpenGL's deleter, here's the error that I get: Exception OpenGL.error.NullFunctionError: NullFunctionError('Attempt to call an undefined function glDeleteBuffers, check for bool(glDeleteBuffers) before calling',) in <function doBufferDeletion at 0x0A8892B0> ignored To me, that sounds like my OpenGL implementation (from Nvidia) doesn't implement glDeleteBuffers() for whatever reason. The deleter code in vbo.py appears to check for this, but it checks for an AttributeError rather than an OpenGL.error.NullFunctionError, or better yet, doing a protective bool(glDeleteBuffers) before actually calling glDeleteBuffers(). By the way, is it problematic that when doing a manual VBO.delete(), the automatic deleter is still invoked? Shouldn't VBO.delete() pop the deleter so glDeleteBuffers() isn't called twice for a particular VBO? Or is that not a problem? Dan |