Context problem when hardware acceleration is turned off.

I have a problem with my JOGL app hanging.

Machine: Dell Precision (NVidia Quadro FX graphics), XP pro, JOGL 1.1.0

When hardware acceleration is enabled, everything works fine. Also, I display the GL version info via a dialog and it is 2.0.1

When hardware acceleration is disabled, the program hangs. The GL version given is 1.1.0 (presumably, the software implementation provided by Microsoft).

When I run the app on a non-hardware accelerated machine, the program also hangs.

Here is the top of the stack trace:

Exception in thread “AWT-EventQueue-0” javax.media.opengl.GLException: Can not destroy context while it is current
at com.sun.opengl.impl.GLContextImpl.destroy(GLContextImpl.java:176)
at javax.media.opengl.GLJPanel.handleReshape(GLJPanel.java:993)
at javax.media.opengl.GLJPanel.paintComponent(GLJPanel.java:479)
at javax.swing.JComponent.paint(JComponent.java:1006)

Does anything obvious stand out for you? Do you think the GL 1.1.0 vs. 2.0.1 has any relevance?

Thanks in advance,
Mark

Have you tried the current nightly build of JOGL?

Hi Ken,

I have not tried that yet. I did try the latest release candidate and there was no change in behavior.

Do you think this might have something to do with openGL 1.1.0 vs. 2.0.1 ?

Mark

Hi again Ken,

I just tried changing GLJPanel to GLCanvas and the problem goes away.

Unfortunately, we cannot use GLCanvas in this app due to the heavyweight problem with Swing :frowning:

What a drag to find this as we start our testing phase.

I’m still baffled with the openGL version issue.

Anything you, or anyone else, could suggest would be helpful.

I’ll try the nightly build and see what that shows.

Mark

The problem is likely that your app requires more than just OpenGL 1.1 features, and when you’re running without hardware acceleration support for the GLJPanel you’re back to using Microsoft’s ancient software OpenGL renderer, which only supports OpenGL 1.1. It’s possible there are bugs in JOGL that are causing its OpenGL context management to fail when deep OpenGL errors occur, but fundamentally your app is not going to run in these configurations anyway unless you retool it to only use very basic OpenGL functionality.

I think some of these issues are definitely hardware related…I for one am having the exact opposite result using a crappy ATI x1650 card. When I have acceleration enabled via the XP Pro properties menu then my display fails, but when I turn it off then it works. I’ve given up trying to figure out old cards.