Re: New tutorial on AWT/SWT/Swing/GLJPanel/GLCanvas
Posted by olesoft on Feb 04, 2011; 9:59pm
URL: https://forum.jogamp.org/New-tutorial-on-AWT-SWT-Swing-GLJPanel-GLCanvas-tp2363921p2427596.html
Hi Wade Walker,
I tried all your examples on windows-32 with jogl-2.0-b280-20110202-windows-i586.
3 of them work fine (AWT, AWTSWTBridge and SwingGLCanvas.
SWT example does not work:
Exception in thread "main" javax.media.opengl.GLException: wglARBPFID2GLCapabilities: Error getting pixel format attributes for pixel format 4 of device context
at com.jogamp.opengl.impl.windows.wgl.WindowsWGLGraphicsConfiguration.wglARBPFID2GLCapabilities(WindowsWGLGraphicsConfiguration.java:257)
at com.jogamp.opengl.impl.windows.wgl.WindowsWGLGraphicsConfiguration.create(WindowsWGLGraphicsConfiguration.java:110)
at com.jogamp.opengl.impl.windows.wgl.WindowsExternalWGLContext.create(WindowsExternalWGLContext.java:87)
at com.jogamp.opengl.impl.windows.wgl.WindowsWGLDrawableFactory.createExternalGLContextImpl(WindowsWGLDrawableFactory.java:432)
at com.jogamp.opengl.impl.GLDrawableFactoryImpl.createExternalGLContext(GLDrawableFactoryImpl.java:256)
at ole.test.OneTriangleSWT.main(OneTriangleSWT.java:45)
Also SwingGLJPanel example does not work:
Exception in thread "AWT-EventQueue-0" javax.media.opengl.GLException: GL_VERSION is NULL: com.jogamp.opengl.impl.windows.wgl.WindowsBitmapWGLContext [OpenGL -1.-1, options 0x0, null, handle 0x0, com.jogamp.opengl.impl.gl4.GL4bcImpl@1e328e0,
Drawable: com.jogamp.opengl.impl.windows.wgl.WindowsBitmapWGLDrawable[Realized true,
Factory com.jogamp.opengl.impl.windows.wgl.WindowsWGLDrawableFactory@90c06f,
handle 0xffffffffd301145b,
Window ProxySurface[config WindowsWGLGraphicsConfiguration[DefaultGraphicsScreen[DefaultGraphicsDevice[type Windows, connection decon, unitID 0, handle 0x0], idx 0], pfdID 20, ARB-Choosen false,
requested GLCaps[on-scr, rgba 8/8/8/0, opaque, accum-rgba 0/0/0/0, dp/st/ms: 16/0/0, one, mono , hw, GLProfile[GL2/GL2]],
chosen GLCaps[20 gdi: offscr, rgba 8/8/8/0, opaque, accum-rgba 16/16/16/0, dp/st/ms: 16/8/0, one, mono , sw, GLProfile[GL2/GL2], pixmap]], displayHandle 0x0, surfaceHandle 0xffffffffd301145b, size 624x444]]]
at com.jogamp.opengl.impl.GLContextImpl.setContextVersion(GLContextImpl.java:672)
at com.jogamp.opengl.impl.GLContextImpl.setGLFunctionAvailability(GLContextImpl.java:859)
at com.jogamp.opengl.impl.windows.wgl.WindowsWGLContext.createImpl(WindowsWGLContext.java:301)
at com.jogamp.opengl.impl.GLContextImpl.makeCurrentLocking(GLContextImpl.java:406)
at com.jogamp.opengl.impl.GLContextImpl.makeCurrent(GLContextImpl.java:352)
at com.jogamp.opengl.impl.GLDrawableHelper.invokeGL(GLDrawableHelper.java:347)
at javax.media.opengl.awt.GLJPanel$SoftwareBackend.doPaintComponentImpl(GLJPanel.java:1083)
at javax.media.opengl.awt.GLJPanel$AbstractReadbackBackend.doPaintComponent(GLJPanel.java:996)
at javax.media.opengl.awt.GLJPanel.paintComponent(GLJPanel.java:384)
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.RepaintManager$PaintManager.paintDoubleBuffered(RepaintManager.java:1472)
at javax.swing.RepaintManager$PaintManager.paint(RepaintManager.java:1403)
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:1762)
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)
Thanks
Olesoft