The OpenGLContext/tests/nehe7.py test fails on Linux
with a segmentation fault during the
gluBuild2DMipmaps(GL_TEXTURE_2D, 3, ix, iy, GL_RGBA,
GL_UNSIGNED_BYTE, image) call.
Again, only fails under the wxPython context (not the glut
one). There appears to be something going on in the
initialisation of the wxPython context under GTK which
results in getting a very limited context created, or
possibly even a broken one. I can't see anything obviously
wrong with what's being done, but something is obviously
causing a problem.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Okay, this is now fixed, though the fixes are not the most
beautiful things in the world. Turns out that the wxPython
wxGLCanvas only creates the actual context during a "window
realization" callback. The fixes involved providing a new
customization point in the context base class, and a
specialization in the wxPython context. There is also a new
flag in the wxPython context which provides a last resort
attempt to initialize during the paint event. This appears
to work in most cases, though the meta-test is showing a few
rendering artifacts.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Logged In: YES
user_id=34901
Again, only fails under the wxPython context (not the glut
one). There appears to be something going on in the
initialisation of the wxPython context under GTK which
results in getting a very limited context created, or
possibly even a broken one. I can't see anything obviously
wrong with what's being done, but something is obviously
causing a problem.
Logged In: YES
user_id=34901
Just making the summary line match the current understanding
of the bug.
Logged In: YES
user_id=34901
Okay, this is now fixed, though the fixes are not the most
beautiful things in the world. Turns out that the wxPython
wxGLCanvas only creates the actual context during a "window
realization" callback. The fixes involved providing a new
customization point in the context base class, and a
specialization in the wxPython context. There is also a new
flag in the wxPython context which provides a last resort
attempt to initialize during the paint event. This appears
to work in most cases, though the meta-test is showing a few
rendering artifacts.