GLJPanel not rendering anything under Linux

Hi there,

every once in a while I feel I should give JOGL another chance for developing a plattform-independent, swing-based 3D application. However, as with all my previous attempts, there’s again something pretty elementary that just doesn’t work as it should. This time it’s GLJPanel not rendering anything, but just displaying a black area where GLCanvas nicely shows what it ought to. Launching the app with -Djogl.debug.GLJPanel yields


javax.media.opengl.GLException: pbuffer creation error: glXChooseFBConfig() failed
	at com.sun.opengl.impl.x11.X11PbufferGLDrawable.createPbuffer(X11PbufferGLDrawable.java:126)
	at com.sun.opengl.impl.x11.X11PbufferGLDrawable.<init>(X11PbufferGLDrawable.java:73)
	at com.sun.opengl.impl.x11.X11GLDrawableFactory$2.run(X11GLDrawableFactory.java:311)
	at com.sun.opengl.impl.x11.X11GLDrawableFactory.maybeDoSingleThreadedWorkaround(X11GLDrawableFactory.java:671)
	at com.sun.opengl.impl.x11.X11GLDrawableFactory.createGLPbuffer(X11GLDrawableFactory.java:318)
	at javax.media.opengl.GLJPanel.initialize(GLJPanel.java:894)
	at javax.media.opengl.GLJPanel.paintComponent(GLJPanel.java:488)
	at javax.swing.JComponent.paint(JComponent.java:1027)
	at javax.swing.JComponent.paintChildren(JComponent.java:864)
	at javax.swing.JComponent.paint(JComponent.java:1036)
	at javax.swing.JComponent.paintChildren(JComponent.java:864)
	at javax.swing.JComponent.paint(JComponent.java:1036)
	at javax.swing.JLayeredPane.paint(JLayeredPane.java:564)
	at javax.swing.JComponent.paintChildren(JComponent.java:864)
	at javax.swing.JComponent.paintToOffscreen(JComponent.java:5129)
	at javax.swing.BufferStrategyPaintManager.paint(BufferStrategyPaintManager.java:277)
	at javax.swing.RepaintManager.paint(RepaintManager.java:1217)
	at javax.swing.JComponent.paint(JComponent.java:1013)
	at java.awt.GraphicsCallback$PaintCallback.run(GraphicsCallback.java:21)
	at sun.awt.SunGraphicsCallback.runOneComponent(SunGraphicsCallback.java:60)
	at sun.awt.SunGraphicsCallback.runComponents(SunGraphicsCallback.java:97)
	at java.awt.Container.paint(Container.java:1780)
	at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:814)
	at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:714)
	at javax.swing.RepaintManager.seqPaintDirtyRegions(RepaintManager.java:694)
	at javax.swing.SystemEventQueueUtilities$ComponentWorkRequest.run(SystemEventQueueUtilities.java:128)
	at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:597)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
GLJPanel: Falling back on software rendering because of problems creating pbuffer
GLJPanel.handleReshape: (w,h) = (472,327)
glViewport(0, 0, 472, 327)

which, however, seems not directly relate to the cause of the problem – I wouldn’t mind software-based rendering as long anything gets rendered at all…

I am developing under Linux (an up-to-date Debian Sid installation), and my graphics card is a not-so new ATI Radeon 9600-based board.

Any comments appreciated…

Best regards –

tcrass

sigh I can get GLJPanel to work if I disable DRI in the xorg.conf file… However, in this case, GLPanel doesn’t work anymore – the initial image output gets rendered, but changes in rendered contents are not displayed.

Any ideas?

I assume you are using AMD’s drivers not the open source drivers?

Hi GKW,

nope, I am using the OSS ati driver. Shouldn’t I?

Regards –

tcrass

The open source driver works in my case with my pretty old ATI Radeon 9250 Pro but I don’t use GLJPanel.

I know for sure that the RadeonHD drivers don’t do 3d currently. I’m not sure what the current status of the ATI drivers is with respect to the 3d stack. AMD’s closed source drivers are supposed to be the ones you have to use if you want a working 3d stack.

Oh, pitty, that! So maybe I’ll check out JOGL again next year…

Anyway, thanks for the info.

 tcrass