Learn how easy it is to sync an existing GitHub or Google Code repo to a SourceForge project! See Demo

Close

#14 glMultiTexCoord2*ARB failure

v2.0
closed-fixed
GL (74)
5
2001-07-20
2001-07-17
Mike C. Fletcher
No

glMultiTexCoord2dARB doesn't seem to want to be called
between glBegin and glEnd, seems as though there might
be some GL function getting called in the wrapper that
shouldn't be called there.

See OpenGLContext/tests/multitexture_1.py for testing
code. Far as I can see that's properly structured.

Discussion

    • assigned_to: nobody --> twburton
     
  • Logged In: YES
    user_id=21784

    This is serious. WGL docs don't make any mention about
    wglGetProcAddress not being called in between glBegin and
    glEnd. This is apparently the cause of the "invalid
    operation." This is confirmed by GLX docs saying that GLX
    calls are not allowed between glBegin and glEnd. In order
    to get around this I'm going to have to figure out a way to
    call wglGetProcAddress outside of glBegin/glEnd and store
    the address. Since proc addresses are potentially context
    dependent this probably means I'll have to create a lookup
    table for each context. Ugh!

    Tarn

     
    • status: open --> pending
     
  • Logged In: YES
    user_id=34901

    http://msdn.microsoft.com/library/default.asp?
    url=/library/en-us/opengl/hh/opengl/ntopnglr_6yer.asp Says
    that you only need a lookup table per pixel-format (not
    much better, really).

     
    • status: pending --> open
     
  • Logged In: YES
    user_id=21784

    Initial fix is in CVS. Only works on glActiveTextureARB
    and glMultiTexCoord2dARB. Will require a bit more work to
    for rest of the extensions.

    New proto added:

    GL.ARB.multitexture.init_GL_ARB_multitexture()

    which needs to be called to load GL_ARB_multitexture into
    the current context.

    Also updated multitexture_1

     
  • Logged In: YES
    user_id=21784

    Changed the name of the init function to
    glInitMultitextureARB to maintain naming consistency.

     
    • status: open --> closed-fixed
     
  • Logged In: YES
    user_id=21784

    glBegin/glEnd extension problem fixed with new extension
    init functions. Multitexture functionality verified to
    work with NeHe/lesson6-multi.py

     
  • It seems to not work anymore on latest versions.
    I tried your code Nehe/lesson6-multi.py with PyOpenGL 3.0.1 and I keep having the "invalid operation" message.

    Jeremy