gpt4 book ai didi

python - NullFunctionError : Attempt to call an undefined alternate function (glGenFramebuffers, glGenFramebuffersEXT)

转载 作者:行者123 更新时间:2023-11-28 17:32:19 24 4
gpt4 key购买 nike

目前我正在处理 3D 对象渲染。在处理帧缓冲区部分时,我遇到了一些错误。

self.fbo = glGenFramebuffers(1)

每当解释器点击这一行时,它会显示以下错误

**File "C:\Python27\lib\site-packages\OpenGL\latebind.py", line 44, in __call__
self._finalCall = self.finalise()
File "C:\Python27\lib\site-packages\OpenGL\extensions.py", line 189, in finalise
self.__name__,
NullFunctionError: Attempt to call an undefined alternate function (glGenFramebuffers, glGenFramebuffersEXT), check for bool(glGenFramebuffers) before calling**

我正在使用 python 2.7.3 和 pyOpenGL 3.0.2。我找不到这个错误的任何答案。

最佳答案

如果 bool(glGenFramebuffers) 返回 False,该错误可能意味着您的计算机无法访问 OpenGL >= 2.1,因此 Framebuffer 对象将无法工作。使用 GPU Caps Viewer 检查您的 OpenGL 支持版本适用于 Windows。对于 Linux,请参见此处:https://askubuntu.com/questions/47062/what-is-terminal-command-that-can-show-opengl-version

如果您至少有 2.1,那么您用来创建上下文的库(pySDL、glut、pySFML 等)可能没有创建兼容的库。解决这个问题取决于图书馆,可能已经有了答案。

如果 bool(glGenFramebuffers) 返回 True,则问题可能出在代码早期的其他地方。

此外,请记住,在尝试创建或使用着色器、帧缓冲区等之前,必须创建上下文并且是当前上下文。

关于python - NullFunctionError : Attempt to call an undefined alternate function (glGenFramebuffers, glGenFramebuffersEXT),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33522986/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com