PyOpenGL glutInit NullFunctionError

2023-12-25

我在 Win7 x64 机器上运行 Anaconda Python 2.7 并使用

pip install PyOpenGL PyOpenGL_accelerate

在 Anaconda 命令行安装 PyOpenGL。

我有一些使用 glutInit 的代码(我必须承认不是我自己的)

import sys
import math
import numpy

import OpenGL
from OpenGL.GL import *
from OpenGL.GLUT import *

import Image

import linkage

# ... a whole load of definitions etc ...

glutInit(sys.argv)
glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB)
glutInitWindowSize(600, 600)
glutCreateWindow('linkage')
init()
initWindow()
glutIdleFunc(idle)
glutMainLoop()

我通过在命令行输入以下命令来运行:

python main.py peaucellier.txt

但随后出现以下错误(第 371 行是上面的 glutInt(sys.argv) 行)

File "C:/Users/Owner/Documents/Python Scripts/linkage/main.py", line 371, in <module>
glutInit(sys.argv)

File "C:\Anaconda\lib\site-packages\OpenGL\GLUT\special.py", line 333, in glutInit
_base_glutInit( ctypes.byref(count), holder )

File "C:\Anaconda\lib\site-packages\OpenGL\platform\baseplatform.py", line 407, in __call__
self.__name__, self.__name__,

NullFunctionError: Attempt to call an undefined function glutInit, check for bool(glutInit) before calling

我已经查看了此论坛中发布的类似错误,但建议的修复均不起作用,这就是为什么我要问,这里出了什么问题?

是不是安装有问题?进口是否正确?

编辑:在尝试了官方版本的许多修复之后,我现在使用一个可以完美运行的非官方版本Python 扩展包的非官方 Windows 二进制文件 http://www.lfd.uci.edu/~gohlke/pythonlibs/


根据下面的链接,问题在于安装过多,而不是pip install。它似乎glut 文件不是 PyOpenGL 或 PyOpenGL_accelerate 包的一部分。您必须单独下载它们。

https://stackoverflow.com/a/39181193/7030177 https://stackoverflow.com/a/39181193/7030177

Windows 用户可以使用下面的链接下载 glut,如给定链接中所述。ftp://ftp.sgi.com/opengl/glut/glut3.html.old#windows ftp://ftp.sgi.com/opengl/glut/glut3.html.old#windows

Linux 用户可以使用以下命令安装 glut:

sudo apt-get install freeglut3-dev

希望这可以帮助 :)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

PyOpenGL glutInit NullFunctionError 的相关文章

随机推荐