I've been trying to track down a regression in multitexturing that happens on Windows with PyOpenGL3. I get the same issue with Python2.5 and Python2.6, and it goes away when I test on Python2.5 with PyOpenGL 2.0.2.01. I don't get this error on Linux.
Running the old NeHe demo "lesson6-multi.py" I found in a local copy of PyOpenGL-2.0.1.09 (in PyOpenGL-2.0.1.09/OpenGL/Demo/NeHe/), I get this traceback:
Z:\test>c:\python25\python lesson6-multi.py
Hit ESC key to quit.
Traceback (most recent call last):
File "c:\python25\lib\site-packages\OpenGL\GLUT\special.py", line 113, in safe
Call
return function( *args, **named )
File "lesson6-multi.py", line 189, in DrawGLScene
glEnd(); # Done Drawing The Cube
File "c:\python25\lib\site-packages\OpenGL\lazywrapper.py", line 9, in __call_
_
return wrapper( baseFunction, *args, **named )
File "c:\python25\lib\site-packages\OpenGL\GL\exceptional.py", line 57, in glE
nd
return baseFunction( )
File "c:\python25\lib\site-packages\OpenGL\error.py", line 194, in glCheckErro
r
baseOperation = baseOperation,
GLError: GLError(
err = 1282,
description = 'invalid operation',
baseOperation = glEnd,
cArguments = ()
)
GLUT Idle callback <function DrawGLScene at 0x00D47830> with (),{} failed: retur
ning None GLError(
err = 1282,
description = 'invalid operation',
baseOperation = glEnd,
cArguments = ()
)
Have just tested with the Demo/NeHe/lesson6-multi.py from PyOpenGL 2.0.1.09 with PyOpenGL 3.0.1 (about to be released). Works as expected. We also have a PyOpenGL-Demo package which includes the updated version of the demo, which works fine. We have lots of other scripts that use multi-texturing, both with the legacy and shader APIs.
Urgh, *Windows*, sorry. Guess I need to get over to windows to test this.
Thanks for looking into this. I tried, but I got lost in the code. This is important for the current and past incarnations of the Vision Egg library, which is useful for vision research experiments. In the future, the VE will move to shaders, but multi-texturing worked fine for years until PyOpenGL 3. I am happy to test.
Is there anything new about this issue?