Unable to enumerate pixel formats...

I just tried running my jogl game on my laptop and I got this error:
Unable to enumerate pixel formats of window using wglGetPixelFormatAttribivARB: 0

I don’t really have any idea of whats causing this since I’m new to jogl/openGL/3d graphics ;D looks like its not able to initialize opengl or something tho. The graphics card is some intel card and I just got the most recent drivers. This laptop also had trouble with Wurm online because it didn’t support a compatible version of opengl I believe, but I have played other jogl games on here.

I just want to know for sure whats causing this and if theres anything I can do to fix it, thanks.

has no one else recieved this error before?

What is the card and the driver number?

I am working on a JOGL project, I got this error on my notebook(with intel 855GM shared memory graphics). and havent got this error on any other graphics card

detailed exception:
net.java.games.jogl.GLException: Unable to enumerate pixel formats of window using wglGetPixelFormatAttribivARB: 0

  at net.java.games.jogl.impl.windows.WindowsGLContext.choosePixelFormatAndCreateContext(WindowsGLContext.java:412)

  at net.java.games.jogl.impl.windows.WindowsOnscreenGLContext.create(WindowsOnscreenGLContext.java:211)

  at net.java.games.jogl.impl.windows.WindowsGLContext.makeCurrent(WindowsGLContext.java:135)

  at net.java.games.jogl.impl.windows.WindowsOnscreenGLContext.makeCurrent(WindowsOnscreenGLContext.java:110)

  at net.java.games.jogl.impl.GLContext.invokeGL(GLContext.java:254)

  at net.java.games.jogl.GLCanvas.reshape(GLCanvas.java:112)

my notebook graphics hardware is ‘Intel 855GM shared memory’ - uses intel extreme graphics.
I am sort of sure about the code working on ati, nvidia hardware.

could some one please comment on this exception,
a work around will be higly appreciated.

-j

Yup, same graphics card and same error over here :frowning:

Could you please file a bug with the JOGL Issue Tracker on the JOGL home page? GKW’s latest fix works around all of the known issues related to wglGetPixelFormatAttribivARB to the best of my understanding, so we will probably have to add a bailout case for this call without throwing an exception.

I had the same problem with my old ATI RagePro128. It looks like a bug in the OpenGL driver. The driver claims to support pixel format extension (WGL_ARB_pixel_format) but causes a JVM crash when a method is called.

As a workaround I added a small test when WGLChoosePixelFormatARB is set.

hoz

How does your test to work around the crash work? Do you detect the card type explicitly, or do something else? Could you file a patch with the JOGL Issue Tracker?

I did something like that in jogl-1.1b4 WindowsGLContext.java :


if (availableWGLExtensions.indexOf("WGL_ARB_pixel_format") >= 0) {
    int[] iattributes = {GL.WGL_NUMBER_PIXEL_FORMATS_ARB};
    int[] iresults = {0};
    if (dummyGL.wglGetPixelFormatAttribivARB(hdc, 0, 0, 1, iattributes, iresults))
            haveWGLChoosePixelFormatARB = true;
    if (availableWGLExtensions.indexOf("WGL_ARB_multisample") >= 0) {
            haveWGLARBMultisample = true;
    }
}

I don’t need the patch anymore for jogl-1.1b5. But I need to set ATI_WORKAROUND=false for the ATI RagePro128. Maybe only the Radeons need the workaround. With the ATI_WORKAROUND=true or autodetection I get the following exception:


An unexpected exception has been detected in native code outside the VM.
Unexpected Signal : EXCEPTION_ACCESS_VIOLATION (0xc0000005) occurred at PC=0x69131B77
Function=DrvSwapBuffers+0xAC3D7
Library=C:\WINDOWS\System32\atioglaa.dll

Current Java thread:
      at net.java.games.jogl.impl.windows.WGL.wglCreateContext(Native Method)
      at net.java.games.jogl.impl.windows.WindowsGLContext.choosePixelFormatAndCreateContext(WindowsGLContext.java:495)
      at net.java.games.jogl.impl.windows.WindowsOnscreenGLContext.create(WindowsOnscreenGLContext.java:211)
      at net.java.games.jogl.impl.windows.WindowsGLContext.makeCurrent(WindowsGLContext.java:135)

Holger