在最新的MacOS Mojave(10.14)笔记本电脑上,使用Python3.6,我尝试使用OpenGL(使用pyOpenGL),并且在尝试使用某些功能时遇到错误。例如
from OpenGL.GL import *
from OpenGL.GLU import *
from OpenGL.GLUT import *
glGenVertexArrays(1)
glGenVertexArrays
引发以下异常:
OpenGL.error.NullFunctionError: Attempt to call an undefined function glGenVertexArrays, check for bool(glGenVertexArrays) before calling
在该函数的内部,有一个名为“ baseplatform.py:checkExtension()”的函数,该函数接收“ false”以尝试检查OpenGL扩展:'GL_ARB_vertex_array_object'
此代码可在Windows计算机上完美运行。
存在某些OpenGL功能(某些OpenGL功能在调用之前,不会引发错误)。 有人知道解决方法吗?也许要安装\升级\降级?
我知道Apple宣布将来会放弃对OpenGL的支持,但据我发现,它应该不会影响10.14。
答案 0 :(得分:1)
您正在使用的功能在macOS 10.14中可用。 macOS支持OpenGL最高版本为4.1。对我来说,好像您忘了在使用OpenGL函数之前初始化OpenGL上下文。