我在OpenGL Qt窗口的设置中在c ++中看到了一些代码,并决定使用PyQt5在python中重写它。调用initializeGL()
函数时出现此错误:
OpenGL.error.NullFunctionError:尝试调用未定义的函数glGenBuffers,在调用前检查bool(glGenBuffers)。
glGenBuffers()
在PyQt5中不起作用吗?
我不是在PyQt中重写了此代码,而是在python的glfw中重写了该函数,并成功调用了该函数。
class MyGlWindow(QGLWidget):
def initializeGL(self):
self.vertexBuffer = glGenBuffers(1)
glBindBuffer(GL_ARRAY_BUFFER, self.vertexBuffer)
verts = numpy.array( [0.0, 0.1,
-0.1, -0.1,
0.1, -0.1], dtype = 'float32'
)
glBufferData(GL_ARRAY_BUFFER, len(verts), verts, GL_STATIC_DRAW)