У меня проблема с PyOpenGL 3.0.2 на 64-разрядном ноутбуке Windows 8 с графическим чипсетом Intel HD 3000. Любой вызов glGenBuffers(1)
(после надлежащей инициализации GL) врезается:Нарушение прав доступа PyOpenGL на Intel HD Graphics 3000
File ".\sample.py", line 7, in init
buffer = glGenBuffers(1)
File "latebind.pyx", line 32, in OpenGL_accelerate.latebind.LateBind.__call__ (src\latebind.c:768)
File "wrapper.pyx", line 308, in OpenGL_accelerate.wrapper.Wrapper.__call__ (src\wrapper.c:5811)
File "C:\Python27\lib\site-packages\OpenGL\platform\baseplatform.py", line 379, in __call__
return self(*args, **named)
WindowsError: exception: access violation writing 0x00000000720CF630
Точно такой же скрипт работает и на других машинах.
У меня установлена последняя версия драйвера GPU (15.28.12.64.2932), которая поддерживает OpenGL 3.1.
Любые идеи?
Вот пример сценария:
import sys
from OpenGL.GLUT import *
from OpenGL.GL import *
from OpenGL.GLU import *
def init():
buffer = glGenBuffers(1)
glutInit(sys.argv)
glutInitWindowSize(600, 600)
glutCreateWindow("Sample")
init()
glutMainLoop()
Возможный дубликат [Вызов OpenGL-расширений с Python] (http://stackoverflow.com/questions/6423994/calling-opengl-extensions-from-python) – genpfault
Я не думаю, что это 'glGenBuffers' находится в 'OpenGL.GL. *', А не в 'OpenGL.GL.ARB. *'. Кроме того, в моей системе нет 'OpenGL.GL.ARB.vertex_buffer_object'. –