PBuffers cause CTD on ATI in Jogl1.1b05

Current Java thread: at net.java.games.jogl.impl.windows.WGL.wglCreateContext(Native Method) at net.java.games.jogl.impl.windows.WindowsPbufferGLContext.create(WindowsPbufferGLContext.java:388) at net.java.games.jogl.impl.windows.WindowsGLContext.makeCurrent(WindowsGLContext.java:135) - locked <0x12f795b8> (a net.java.games.jogl.impl.windows.WindowsPbufferGLContext) at net.java.games.jogl.impl.windows.WindowsPbufferGLContext.makeCurrent(WindowsPbufferGLContext.java:314) - locked <0x12f795b8> (a net.java.games.jogl.impl.windows.WindowsPbufferGLContext) at net.java.games.jogl.impl.GLContext.invokeGL(GLContext.java:254) - locked <0x12f795b8> (a net.java.games.jogl.impl.windows.WindowsPbufferGLContext) at net.java.games.jogl.impl.GLPbufferImpl.display(GLPbufferImpl.java:64) at class.ba.display(SourceFile:499) at net.java.games.jogl.impl.GLDrawableHelper.display(GLDrawableHelper.java:74) at net.java.games.jogl.GLCanvas$DisplayAction.run(GLCanvas.java:221) at net.java.games.jogl.impl.GLContext.invokeGL(GLContext.java:290) - locked <0x12bf8c58> (a net.java.games.jogl.impl.windows.WindowsOnscreenGLContext) at net.java.games.jogl.GLCanvas$DisplayOnEventDispatchThreadAction.run(GLCanvas.java:238) at java.awt.event.InvocationEvent.dispatch(Unknown Source) at java.awt.EventQueue.dispatchEvent(Unknown Source) at java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown Source) at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source) at java.awt.EventDispatchThread.pumpEvents(Unknown Source) at java.awt.EventDispatchThread.pumpEvents(Unknown Source) at java.awt.EventDispatchThread.run(Unknown Source)

The same code works fine on nvidia.

canvas.canCreateOffscreenDrawable() returns true in both cases.

I tried adding pBuffer.isInitialized() before calling pBuffer.display(), but that always returned false for me.

Do you have a test case? Has this worked properly on earlier JOGL releases? Could you please submit a bug with the JOGL Issue Tracker? (What does CTD stand for? Does the JVM crash, or is an exception thrown?)

CTD = Crash To Desktop. Sorry. :-/

I unfortunately don’t have a test case yet as I’m very busy (just released the new client for my game… tons of bugs)

However, I’m fairly (95%) sure that in an older version of jogl (don’t remember exactly which one it was), it threw an exception instead of killing the jvm.

If you could confirm that this isn’t anything you know right away what it is, I can make a test case and submit a bug report.

Nothing we currently know about. Please file a bug. Thanks.

Done. =)

[quote]Done. =)
[/quote]
crossing fingers so i can finally play with pbuffers. :slight_smile:
YUM !

Don’t get your hopes up too high. ATI’s pbuffer support is infuriating. I have been trying to get a hardware accelerated GLJPanel using pbuffers up and running for a couple months now. It almost works on nvidia cards. It doesn’t run at all on ATI. Even some very simple pbuffer programs don’t work on ATI. I don’t know what the deal is but ATI’s pbuffer implementation is just does not want to work at all. I don’t think their drivers like multithreading.

=(

Well, I at least hope future versions of jogl won’t kill the jvm when this happens, as that kinda puts a dampener on the whole game. :wink:

Has anyone tried JOGL’s pbuffer support on some of the more recent ATI cards like the 9800? Is it only the 9700 that exhibits the problems?

We really need to port some of the NVidia-specific functionality in the JOGL demos to use ARB routines (like fragment programs instead of register combiners) so that we can test these programs on ATI cards on a regular basis.

[quote]Has anyone tried JOGL’s pbuffer support on some of the more recent ATI cards like the 9800? Is it only the 9700 that exhibits the problems?
[/quote]
My 9700 pro fried yesterday :frowning: (now I have a screen full of garbage…), so I think I might invest to a X800XT - I could test the pbuffer support on that after a while :).