Hello all, I'm having an issue with OpenGL/JOGL in a stand-alone application that I am currently building. In the application, the user selects items in a 2D view and then have the ability to look at the items in 3D using OpenGL/JOGL. The user has the ability to switch back and forth between the 2D view and the 3D view. I am getting very inconsistent errors when a user enters 3D, returns to 2D, and then goes back into 3D again. Sometimes the app will work, sometimes it will crash. I am developing on a Dell Optiplex 740 and have not been able to recreate the error on this machine. I am testing the app on a Dell Optiplex 260 and getting errors. The app worked with previous versions of JOGL but started erroring when the version was switched to a March '11 build. Since, I've updated to the 04/22/11 build. Any help would be greatly appreciated. Info about testing PC: Dell Optiplex 260 Intel 82845G Graphics Controller (Driver: 6.14.10.4342) Windows XP Professional Service Pack 2 JOGL source from 04/22/11 I have tried to use the JOGL jars and I have also tried using the source code itself. The following is the stack trace I'm getting with the error: Exception in thread "AWT-EventQueue-0" javax.media.opengl.GLException: Unable to set pixel format 4 for device context 0x4b0106c8: error code 0 at jogamp.opengl.windows.wgl.WindowsWGLGraphicsConfigurationFactory.updateGraphicsConfiguration(WindowsWGLGraphicsConfigurationFactory.java:203) at jogamp.opengl.windows.wgl.WindowsWGLGraphicsConfiguration.updateGraphicsConfiguration(WindowsWGLGraphicsConfiguration.java:136) at jogamp.opengl.windows.wgl.WindowsWGLDrawable.setRealizedImpl(WindowsWGLDrawable.java:71) at jogamp.opengl.GLDrawableImpl.setRealized(GLDrawableImpl.java:155) at javax.media.opengl.awt.GLCanvas.validateGLDrawable(GLCanvas.java:559) at javax.media.opengl.awt.GLCanvas.display(GLCanvas.java:382) at javax.media.opengl.awt.GLCanvas.paint(GLCanvas.java:487) at com.Landscape.Display.D3D.display.Panel3D.paint(Panel3D.java:28) at com.Landscape.Screen.ObjectPanel.paintWidget(ObjectPanel.java:57) at com.Landscape.Screen.Widget.paint(Widget.java:690) at com.Landscape.Screen.Widget.paint(Widget.java:721) at com.Landscape.Screen.MainFrame.paint(MainFrame.java:81) at com.Landscape.Screen.MainFrame.update(MainFrame.java:104) at sun.awt.RepaintArea.updateComponent(RepaintArea.java:239) at sun.awt.RepaintArea.paint(RepaintArea.java:216) at sun.awt.windows.WComponentPeer.handleEvent(WComponentPeer.java:310) at sun.awt.windows.WWindowPeer.handleEvent(WWindowPeer.java:695) at java.awt.Component.dispatchEventImpl(Component.java:4706) at java.awt.Container.dispatchEventImpl(Container.java:2099) at java.awt.Window.dispatchEventImpl(Window.java:2478) at java.awt.Component.dispatchEvent(Component.java:4460) at java.awt.EventQueue.dispatchEvent(EventQueue.java:599) 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) Exception in thread "AWT-EventQueue-0" javax.media.opengl.GLException: Unable to create temp OpenGL context for device context 0x4b0106c8 at jogamp.opengl.windows.wgl.WindowsWGLContext.createImpl(WindowsWGLContext.java:296) at jogamp.opengl.GLContextImpl.makeCurrentLocking(GLContextImpl.java:414) at jogamp.opengl.GLContextImpl.makeCurrent(GLContextImpl.java:353) at jogamp.opengl.GLDrawableHelper.invokeGL(GLDrawableHelper.java:348) at javax.media.opengl.awt.GLCanvas.maybeDoSingleThreadedWorkaround(GLCanvas.java:772) at javax.media.opengl.awt.GLCanvas.display(GLCanvas.java:388) at javax.media.opengl.awt.GLCanvas.paint(GLCanvas.java:487) at com.Landscape.Display.D3D.display.Panel3D.paint(Panel3D.java:28) at com.Landscape.Screen.ObjectPanel.paintWidget(ObjectPanel.java:57) at com.Landscape.Screen.Widget.paint(Widget.java:690) at com.Landscape.Screen.Widget.paint(Widget.java:721) at com.Landscape.Screen.MainFrame.paint(MainFrame.java:81) at com.Landscape.Screen.MainFrame.update(MainFrame.java:104) at sun.awt.RepaintArea.updateComponent(RepaintArea.java:239) at sun.awt.RepaintArea.paint(RepaintArea.java:216) at sun.awt.windows.WComponentPeer.handleEvent(WComponentPeer.java:310) at sun.awt.windows.WWindowPeer.handleEvent(WWindowPeer.java:695) at java.awt.Component.dispatchEventImpl(Component.java:4706) at java.awt.Container.dispatchEventImpl(Container.java:2099) at java.awt.Window.dispatchEventImpl(Window.java:2478) at java.awt.Component.dispatchEvent(Component.java:4460) at java.awt.EventQueue.dispatchEvent(EventQueue.java:599) 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) ------------------------------------------------------------------------- I also added some prints to the source code and gathered the following information: --------------------------------- The first few times through when the app was working: WindowsWGLGraphicsConfigurationFactory.java - updateGraphicsConfiguration chooser null factory jogamp.opengl.windows.wgl.WindowsWGLDrawableFactory@14c352e ns GDISurface[config WindowsWGLGraphicsConfiguration[DefaultGraphicsScreen[WindowsGraphicsDevice[type Windows, connection decon, unitID 0, handle 0x0], idx 0], pfdID 0, 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, dbl, mono , hw, GLProfile[GL2/GL2]], chosen GLCaps[on-scr, rgba 8/8/8/0, opaque, accum-rgba 0/0/0/0, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]]], displayHandle 0x0, windowHandle 0x3702e4, surfaceHandle 0xffffffffbd010dbd, size 64x64] pfdIDs null !config.isExternal() true !config.isDetermined() true config WindowsWGLGraphicsConfiguration[DefaultGraphicsScreen[WindowsGraphicsDevice[type Windows, connection decon, unitID 0, handle 0x0], idx 0], pfdID 0, 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, dbl, mono , hw, GLProfile[GL2/GL2]], chosen GLCaps[on-scr, rgba 8/8/8/0, opaque, accum-rgba 0/0/0/0, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]]] WindowsWGLGraphicsConfigurationFactory.java - updateGraphicsConfiguration chooser null factory jogamp.opengl.windows.wgl.WindowsWGLDrawableFactory@14c352e ns JAWT-Window[windowHandle 0x160568, surfaceHandle 0x2d0106e2, bounds [ 10 / 91 650 x 524 ], pos 10/91, size 650x524, visible true, lockedExt false, config AWTGraphicsConfiguration[AWTGraphicsScreen[AWTGraphicsDevice[type AWT[subType null], connection \Display0, unitID 0, awtDevice Win32GraphicsDevice[screen=0], handle 0x0], idx 0], chosen GLCaps[4 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 16/16/16/16, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]], requested GLCaps[on-scr, rgba 8/8/8/0, opaque, accum-rgba 0/0/0/0, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]], sun.awt.Win32GraphicsConfig@12bbe6b[dev=Win32GraphicsDevice[screen=0],pixfmt=4], encapsulated WindowsWGLGraphicsConfiguration[DefaultGraphicsScreen[WindowsGraphicsDevice[type Windows, connection decon, unitID 0, handle 0x0], idx 0], pfdID 4, ARB-Choosen true, requested GLCaps[on-scr, rgba 8/8/8/0, opaque, accum-rgba 0/0/0/0, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]], chosen GLCaps[4 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 16/16/16/16, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]]]], awtComponent AWT-GLCanvas[Realized true, jogamp.opengl.windows.wgl.WindowsOnscreenWGLDrawable, Realized true, Factory jogamp.opengl.windows.wgl.WindowsWGLDrawableFactory@14c352e, handle 0x2d0106e2, Drawable size 650x524, AWT pos 10/91, size 650x524, visible true, AWTGraphicsConfiguration[AWTGraphicsScreen[AWTGraphicsDevice[type AWT[subType null], connection \Display0, unitID 0, awtDevice Win32GraphicsDevice[screen=0], handle 0x0], idx 0], chosen GLCaps[4 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 16/16/16/16, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]], requested GLCaps[on-scr, rgba 8/8/8/0, opaque, accum-rgba 0/0/0/0, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]], sun.awt.Win32GraphicsConfig@12bbe6b[dev=Win32GraphicsDevice[screen=0],pixfmt=4], encapsulated WindowsWGLGraphicsConfiguration[DefaultGraphicsScreen[WindowsGraphicsDevice[type Windows, connection decon, unitID 0, handle 0x0], idx 0], pfdID 4, ARB-Choosen true, requested GLCaps[on-scr, rgba 8/8/8/0, opaque, accum-rgba 0/0/0/0, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]], chosen GLCaps[4 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 16/16/16/16, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]]]]]] pfdIDs null !config.isExternal() true !config.isDetermined() false config WindowsWGLGraphicsConfiguration[DefaultGraphicsScreen[WindowsGraphicsDevice[type Windows, connection decon, unitID 0, handle 0x0], idx 0], pfdID 4, ARB-Choosen true, requested GLCaps[on-scr, rgba 8/8/8/0, opaque, accum-rgba 0/0/0/0, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]], chosen GLCaps[4 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 16/16/16/16, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]]] hdc 755042018 config.getPixelFormatID() 4 config.getPixelFormat().getClass() class jogamp.nativewindow.windows.PIXELFORMATDESCRIPTOR32 config.getPixelFormat().getBReserved() 0 config.getPixelFormat().getCAccumAlphaBits() 16 config.getPixelFormat().getCAccumBits() 64 config.getPixelFormat().getCAccumBlueBits() 16 config.getPixelFormat().getCAccumGreenBits() 16 config.getPixelFormat().getCAccumRedBits() 16 config.getPixelFormat().getCAlphaBits() 0 config.getPixelFormat().getCAlphaShift() 0 config.getPixelFormat().getCAuxBuffers() 0 config.getPixelFormat().getCBlueBits() 5 config.getPixelFormat().getCColorBits() 16 config.getPixelFormat().getCDepthBits() 16 config.getPixelFormat().getCGreenBits() 6 config.getPixelFormat().getCGreenShift() 5 config.getPixelFormat().getCRedBits() 5 config.getPixelFormat().getCRedShift() 11 config.getPixelFormat().getCStencilBits() 0 config.getPixelFormat().getDwDamageMask() 0 config.getPixelFormat().getDwFlags() 37 config.getPixelFormat().getDwLayerMask() 0 config.getPixelFormat().getDwVisibleMask() 0 config.getPixelFormat().getILayerType() 0 config.getPixelFormat().getIPixelType() 0 config.getPixelFormat().getNSize() 40 config.getPixelFormat().getNVersion() 1 !GDI.SetPixelFormat(hdc, config.getPixelFormatID(), config.getPixelFormat()) false ------------------------------ The last time in the following line was "true" and the error occurred: !GDI.SetPixelFormat(hdc, config.getPixelFormatID(), config.getPixelFormat()) true Exception in thread "AWT-EventQueue-0" javax.media.opengl.GLException: Unable to create temp OpenGL context for device context 0x350106dd at jogamp.opengl.windows.wgl.WindowsWGLContext.createImpl(WindowsWGLContext.java:296) at jogamp.opengl.GLContextImpl.makeCurrentLocking(GLContextImpl.java:414) at jogamp.opengl.GLContextImpl.makeCurrent(GLContextImpl.java:353) at jogamp.opengl.GLDrawableHelper.invokeGL(GLDrawableHelper.java:348) at javax.media.opengl.awt.GLCanvas.maybeDoSingleThreadedWorkaround(GLCanvas.java:772) at javax.media.opengl.awt.GLCanvas.display(GLCanvas.java:388) at javax.media.opengl.awt.GLCanvas.paint(GLCanvas.java:487) at sun.awt.RepaintArea.paintComponent(RepaintArea.java:248) at sun.awt.RepaintArea.paint(RepaintArea.java:224) at sun.awt.windows.WComponentPeer.handleEvent(WComponentPeer.java:310) at java.awt.Component.dispatchEventImpl(Component.java:4706) at java.awt.Component.dispatchEvent(Component.java:4460) at java.awt.EventQueue.dispatchEvent(EventQueue.java:599) 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) 2011-04-22 13:31:17,640 21 ERROR [com.Landscape.Utils.Logging.Logger] Panel 3D Paint Failed 2011-04-22 13:31:17,687 21 ERROR [com.Landscape.Utils.Logging.Logger] Panel 3D Paint Failed 2011-04-22 13:31:17,703 21 ERROR [com.Landscape.Utils.Logging.Logger] Panel 3D Paint Failed 2011-04-22 13:31:17,734 21 ERROR [com.Landscape.Utils.Logging.Logger] Panel 3D Paint Failed 2011-04-22 13:31:17,765 21 ERROR [com.Landscape.Utils.Logging.Logger] Panel 3D Paint Failed 2011-04-22 13:31:17,796 21 ERROR [com.Landscape.Utils.Logging.Logger] Panel 3D Paint Failed 2011-04-22 13:31:17,843 21 ERROR [com.Landscape.Utils.Logging.Logger] Panel 3D Paint Failed 2011-04-22 13:31:17,875 21 ERROR [com.Landscape.Utils.Logging.Logger] Panel 3D Paint Failed 2011-04-22 13:31:17,906 21 ERROR [com.Landscape.Utils.Logging.Logger] Panel 3D Paint Failed 2011-04-22 13:31:17,953 21 ERROR [com.Landscape.Utils.Logging.Logger] Panel 3D Paint Failed 2011-04-22 13:31:17,984 21 ERROR [com.Landscape.Utils.Logging.Logger] Panel 3D Paint Failed 2011-04-22 13:31:18,015 21 ERROR [com.Landscape.Utils.Logging.Logger] Panel 3D Paint Failed 2011-04-22 13:31:18,046 21 ERROR [com.Landscape.Utils.Logging.Logger] Panel 3D Paint Failed 2011-04-22 13:31:18,093 21 ERROR [com.Landscape.Utils.Logging.Logger] Panel 3D Paint Failed 2011-04-22 13:31:18,125 21 ERROR [com.Landscape.Utils.Logging.Logger] Panel 3D Paint Failed 2011-04-22 13:31:18,156 21 ERROR [com.Landscape.Utils.Logging.Logger] Panel 3D Paint Failed 2011-04-22 13:31:18,203 21 ERROR [com.Landscape.Utils.Logging.Logger] Panel 3D Paint Failed 2011-04-22 13:31:18,234 21 ERROR [com.Landscape.Utils.Logging.Logger] Panel 3D Paint Failed 2011-04-22 13:31:18,296 21 ERROR [com.Landscape.Utils.Logging.Logger] Panel 3D Paint Failed 2011-04-22 13:31:18,328 21 ERROR [com.Landscape.Utils.Logging.Logger] Panel 3D Paint Failed 2011-04-22 13:31:18,359 21 ERROR [com.Landscape.Utils.Logging.Logger] Panel 3D Paint Failed 2011-04-22 13:31:19,312 21 ERROR [com.Landscape.Utils.Logging.Logger] Panel 3D Paint Failed 2011-04-22 13:31:19,343 21 ERROR [com.Landscape.Utils.Logging.Logger] Panel 3D Paint Failed 2011-04-22 13:31:19,375 21 ERROR [com.Landscape.Utils.Logging.Logger] Panel 3D Paint Failed 2011-04-22 13:31:19,656 21 ERROR [com.Landscape.Utils.Logging.Logger] Panel 3D Paint Failed 2011-04-22 13:31:19,687 21 ERROR [com.Landscape.Utils.Logging.Logger] Panel 3D Paint Failed 2011-04-22 13:31:19,718 21 ERROR [com.Landscape.Utils.Logging.Logger] Panel 3D Paint Failed 2011-04-22 13:31:19,750 21 ERROR [com.Landscape.Utils.Logging.Logger] Panel 3D Paint Failed 2011-04-22 13:31:19,796 21 ERROR [com.Landscape.Utils.Logging.Logger] Panel 3D Paint Failed 2011-04-22 13:31:19,828 21 ERROR [com.Landscape.Utils.Logging.Logger] Panel 3D Paint Failed 2011-04-22 13:31:20,000 21 ERROR [com.Landscape.Utils.Logging.Logger] Panel 3D Paint Failed 2011-04-22 13:31:20,031 21 ERROR [com.Landscape.Utils.Logging.Logger] Panel 3D Paint Failed 2011-04-22 13:31:20,078 21 ERROR [com.Landscape.Utils.Logging.Logger] Panel 3D Paint Failed 2011-04-22 13:31:20,312 21 ERROR [com.Landscape.Utils.Logging.Logger] Panel 3D Paint Failed 2011-04-22 13:31:20,437 21 ERROR [com.Landscape.Utils.Logging.Logger] Panel 3D Paint Failed 2011-04-22 13:31:20,468 21 ERROR [com.Landscape.Utils.Logging.Logger] Panel 3D Paint Failed 2011-04-22 13:31:20,656 21 ERROR [com.Landscape.Utils.Logging.Logger] Panel 3D Paint Failed 2011-04-22 13:31:20,687 21 ERROR [com.Landscape.Utils.Logging.Logger] Panel 3D Paint Failed 2011-04-22 13:31:20,718 21 ERROR [com.Landscape.Utils.Logging.Logger] Panel 3D Paint Failed 2011-04-22 13:31:21,609 21 ERROR [com.Landscape.Utils.Logging.Logger] Panel 3D Paint Failed Exception in thread "AWT-EventQueue-0" javax.media.opengl.GLException: Unable to create temp OpenGL context for device context 0xffffffffbd010dbd at jogamp.opengl.windows.wgl.WindowsWGLContext.createImpl(WindowsWGLContext.java:296) at jogamp.opengl.GLContextImpl.makeCurrentLocking(GLContextImpl.java:414) at jogamp.opengl.GLContextImpl.makeCurrent(GLContextImpl.java:353) at jogamp.opengl.GLDrawableHelper.invokeGL(GLDrawableHelper.java:348) at javax.media.opengl.awt.GLCanvas.maybeDoSingleThreadedWorkaround(GLCanvas.java:772) at javax.media.opengl.awt.GLCanvas.display(GLCanvas.java:388) at javax.media.opengl.awt.GLCanvas.paint(GLCanvas.java:487) at sun.awt.RepaintArea.paintComponent(RepaintArea.java:248) at sun.awt.RepaintArea.paint(RepaintArea.java:224) at sun.awt.windows.WComponentPeer.handleEvent(WComponentPeer.java:310) at java.awt.Component.dispatchEventImpl(Component.java:4706) at java.awt.Component.dispatchEvent(Component.java:4460) at java.awt.EventQueue.dispatchEvent(EventQueue.java:599) 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) |
Administrator
|
Hi Rob,
That looks like great info -- could you put it in a bug report at https://jogamp.org/bugzilla/? Just log in with the same email address and password you used on the forum, and paste all this info in your report. That way we can make sure this issue doesn't get lost in the forum traffic I'm sure you've already done this, but before entering the bug, please check that your drivers are the latest versions from the manufacturer. This will insure we're not chasing a bug that's already fixed In your bug report, could you include your Java version, and tell us whether your Windows is 32-bit (I'm assuming it is). And to get more debug logging output from your program, please add "-Dnewt.debug=all -Dnativewindow.debug=all -Djogl.debug=all" to your VM args before capturing the log. I've seen this type of issue before with older Windows XP 32-bit systems like yours. The best way for us to debug it is if we have a small test case that duplicates the problem. Is it possible to pull out a standalone test (maybe one or two pages of code) that will reliably cause the problem on your machine? If so, I'll test it on some of my old machines and see if I can duplicate it. |
Wade,
Thank you for the speedy response. I will be getting as much of this information for you as possible and I will submit a bug report as well. The graphics controller drivers are up to date according to Intel's information. The Java version is jdk1.6.0_21. Windows is 32-bit. Thanks again. I tried adding the VM args you suggested and got the following stack trace: WHEN WORKING: Switching to count: 74 java.lang.Exception: main - Info: removeNotify - start at javax.media.opengl.awt.GLCanvas.removeNotify(GLCanvas.java:588) at java.awt.Container.remove(Container.java:1140) at java.awt.Container.remove(Container.java:1198) at test.SimpleScene.cleanup(SimpleScene.java:163) at test.SimpleScene.main(SimpleScene.java:60) java.lang.Exception: Info: dispose(false) - start, hasContext true, hasDrawable true at javax.media.opengl.awt.GLCanvas.dispose(GLCanvas.java:398) at javax.media.opengl.awt.GLCanvas.removeNotify(GLCanvas.java:599) at java.awt.Container.remove(Container.java:1140) at java.awt.Container.remove(Container.java:1198) at test.SimpleScene.cleanup(SimpleScene.java:163) at test.SimpleScene.main(SimpleScene.java:60) setRealized: jogamp.opengl.windows.wgl.WindowsOnscreenWGLDrawable true -> false main - GLCanvas.dispose(false): closed GraphicsDevice: WindowsGraphicsDevice[type Windows, connection decon, unitID 0, handle 0x0], result: false dispose(false) - stop main - Info: removeNotify - end, peer: null java.lang.Exception: main - Info: addNotify - start, bounds: java.awt.Rectangle[x=0,y=0,width=0,height=0] at javax.media.opengl.awt.GLCanvas.addNotify(GLCanvas.java:503) at java.awt.Container.addImpl(Container.java:1068) at java.awt.Container.add(Container.java:365) at test.SimpleScene.init(SimpleScene.java:152) at test.SimpleScene.main(SimpleScene.java:61) GraphicsConfigurationFactory.getFactory() class javax.media.nativewindow.awt.AWTGraphicsDevice -> jogamp.opengl.windows.wgl.awt.WindowsAWTWGLGraphicsConfigurationFactory@b169f8 WindowsAWTWGLGraphicsConfigurationFactory: got AWTGraphicsScreen[AWTGraphicsDevice[type AWT[subType null], connection \Display0, unitID 0, awtDevice Win32GraphicsDevice[screen=0], handle 0x0], idx 0] GraphicsConfigurationFactory.getFactory() class javax.media.nativewindow.windows.WindowsGraphicsDevice -> jogamp.opengl.windows.wgl.WindowsWGLGraphicsConfigurationFactory@12f6684 updateGraphicsConfiguration(using shared): hdc 0xffffffff98011067 !!! user chosen caps GLCaps[on-scr, rgba 8/8/8/0, opaque, accum-rgba 0/0/0/0, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]] wglChoosePixelFormatARB: NumFormats (wglChoosePixelFormatARB) accelMode 0x2027: 0 wglChoosePixelFormatARB: NumFormats (wglChoosePixelFormatARB) accelMode 0x2026: 0 wglChoosePixelFormatARB: NumFormats (wglChoosePixelFormatARB) accelMode 0xffffffff: 0 updateGraphicsConfigurationARB: wglChoosePixelFormatARB failed with: GLCaps[on-scr, rgba 8/8/8/0, opaque, accum-rgba 0/0/0/0, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]] updateGraphicsConfigurationARB: NumFormats (wglAllARBPFIDs) 42 updateGraphicsConfigurationARB: 42 pfd ids, onscreen true, pbuffer false, 18 glcaps Desired: GLCaps[on-scr, rgba 8/8/8/0, opaque, accum-rgba 0/0/0/0, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]] Available: 18 0: GLCaps[1 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 0/0/0/0, dp/st/ms: 0/0/0, one, mono , hw, GLProfile[GL2/GL2]] 1: GLCaps[2 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 16/16/16/16, dp/st/ms: 0/0/0, dbl, mono , hw, GLProfile[GL2/GL2]] 2: GLCaps[3 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 0/0/0/0, dp/st/ms: 16/0/0, one, mono , hw, GLProfile[GL2/GL2]] 3: GLCaps[4 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 16/16/16/16, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]] 4: GLCaps[5 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 0/0/0/0, dp/st/ms: 24/8/0, one, mono , hw, GLProfile[GL2/GL2]] 5: GLCaps[6 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 16/16/16/16, dp/st/ms: 24/8/0, dbl, mono , hw, GLProfile[GL2/GL2]] 6: GLCaps[7 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 11/11/10/0, dp/st/ms: 32/8/0, one, mono , sw, GLProfile[GL2/GL2]] 7: GLCaps[8 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 11/11/10/0, dp/st/ms: 16/8/0, one, mono , sw, GLProfile[GL2/GL2]] 8: GLCaps[9 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 11/11/10/0, dp/st/ms: 32/8/0, dbl, mono , sw, GLProfile[GL2/GL2]] 9: GLCaps[10 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 11/11/10/0, dp/st/ms: 16/8/0, dbl, mono , sw, GLProfile[GL2/GL2]] 10: GLCaps[11 arb: on-scr, rgba 5/6/5/8, opaque, accum-rgba 8/8/8/8, dp/st/ms: 32/8/0, one, mono , sw, GLProfile[GL2/GL2]] 11: GLCaps[12 arb: on-scr, rgba 5/6/5/8, opaque, accum-rgba 8/8/8/8, dp/st/ms: 16/8/0, one, mono , sw, GLProfile[GL2/GL2]] 12: GLCaps[13 arb: on-scr, rgba 5/6/5/8, opaque, accum-rgba 8/8/8/8, dp/st/ms: 32/8/0, dbl, mono , sw, GLProfile[GL2/GL2]] 13: GLCaps[14 arb: on-scr, rgba 5/6/5/8, opaque, accum-rgba 8/8/8/8, dp/st/ms: 16/8/0, dbl, mono , sw, GLProfile[GL2/GL2]] 14: GLCaps[15 arb: on-scr, rgba 8/8/8/0, opaque, accum-rgba 0/0/0/0, dp/st/ms: 32/8/0, one, mono , sw, GLProfile[GL2/GL2]] 15: GLCaps[16 arb: on-scr, rgba 8/8/8/0, opaque, accum-rgba 0/0/0/0, dp/st/ms: 16/8/0, one, mono , sw, GLProfile[GL2/GL2]] 16: GLCaps[17 arb: on-scr, rgba 8/8/8/0, opaque, accum-rgba 0/0/0/0, dp/st/ms: 32/8/0, dbl, mono , sw, GLProfile[GL2/GL2]] 17: GLCaps[18 arb: on-scr, rgba 8/8/8/0, opaque, accum-rgba 0/0/0/0, dp/st/ms: 16/8/0, dbl, mono , sw, GLProfile[GL2/GL2]] Window system's recommended choice: -1 Scores: [ -1384, -448, -1288, -352, -1360, -424, -2824, -2728, -1824, -1728, 2536, 2440, 1536, 1440, 2504, 2408, 1504, 1408 ] Chosen index: 3 Chosen capabilities: GLCaps[4 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 16/16/16/16, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]] chooseCapabilities: Chosen idx 3 !!! chosen pfdID (ARB): native recommended 0 chosen GLCaps[4 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 16/16/16/16, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]] *** setCapsPFD: GLCaps[4 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 16/16/16/16, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]] WindowsAWTWGLGraphicsConfigurationFactory: Found new AWT PFD ID 4 -> WindowsWGLGraphicsConfiguration[DefaultGraphicsScreen[WindowsGraphicsDevice[type Windows, connection decon, unitID 0, handle 0x0], idx 0], pfdID 4, ARB-Choosen true, requested GLCaps[on-scr, rgba 8/8/8/0, opaque, accum-rgba 0/0/0/0, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]], chosen GLCaps[4 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 16/16/16/16, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]]] GLDrawableFactoryImpl.createGLDrawable -> OnscreenDrawable: JAWT-Window[windowHandle 0x0, surfaceHandle 0x0, bounds [ 0 / 0 0 x 0 ], pos 0/0, size 0x0, visible true, lockedExt false, config AWTGraphicsConfiguration[AWTGraphicsScreen[AWTGraphicsDevice[type AWT[subType null], connection \Display0, unitID 0, awtDevice Win32GraphicsDevice[screen=0], handle 0x0], idx 0], chosen GLCaps[4 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 16/16/16/16, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]], requested GLCaps[on-scr, rgba 8/8/8/0, opaque, accum-rgba 0/0/0/0, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]], sun.awt.Win32GraphicsConfig@18c56d[dev=Win32GraphicsDevice[screen=0],pixfmt=4], encapsulated WindowsWGLGraphicsConfiguration[DefaultGraphicsScreen[WindowsGraphicsDevice[type Windows, connection decon, unitID 0, handle 0x0], idx 0], pfdID 4, ARB-Choosen true, requested GLCaps[on-scr, rgba 8/8/8/0, opaque, accum-rgba 0/0/0/0, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]], chosen GLCaps[4 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 16/16/16/16, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]]]], awtComponent AWT-GLCanvas[Realized false, null-drawable, Realized false, Factory null, handle 0x0, Drawable size -1x-1, AWT pos 0/0, size 0x0, visible true, AWTGraphicsConfiguration[AWTGraphicsScreen[AWTGraphicsDevice[type AWT[subType null], connection \Display0, unitID 0, awtDevice Win32GraphicsDevice[screen=0], handle 0x0], idx 0], chosen GLCaps[4 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 16/16/16/16, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]], requested GLCaps[on-scr, rgba 8/8/8/0, opaque, accum-rgba 0/0/0/0, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]], sun.awt.Win32GraphicsConfig@18c56d[dev=Win32GraphicsDevice[screen=0],pixfmt=4], encapsulated WindowsWGLGraphicsConfiguration[DefaultGraphicsScreen[WindowsGraphicsDevice[type Windows, connection decon, unitID 0, handle 0x0], idx 0], pfdID 4, ARB-Choosen true, requested GLCaps[on-scr, rgba 8/8/8/0, opaque, accum-rgba 0/0/0/0, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]], chosen GLCaps[4 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 16/16/16/16, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]]]]]] GLDrawableFactoryImpl.createGLDrawable: jogamp.opengl.windows.wgl.WindowsOnscreenWGLDrawable[Realized false, Factory jogamp.opengl.windows.wgl.WindowsWGLDrawableFactory@18fe7c3, handle 0x0, Window JAWT-Window[windowHandle 0x0, surfaceHandle 0x0, bounds [ 0 / 0 0 x 0 ], pos 0/0, size 0x0, visible true, lockedExt false, config AWTGraphicsConfiguration[AWTGraphicsScreen[AWTGraphicsDevice[type AWT[subType null], connection \Display0, unitID 0, awtDevice Win32GraphicsDevice[screen=0], handle 0x0], idx 0], chosen GLCaps[4 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 16/16/16/16, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]], requested GLCaps[on-scr, rgba 8/8/8/0, opaque, accum-rgba 0/0/0/0, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]], sun.awt.Win32GraphicsConfig@18c56d[dev=Win32GraphicsDevice[screen=0],pixfmt=4], encapsulated WindowsWGLGraphicsConfiguration[DefaultGraphicsScreen[WindowsGraphicsDevice[type Windows, connection decon, unitID 0, handle 0x0], idx 0], pfdID 4, ARB-Choosen true, requested GLCaps[on-scr, rgba 8/8/8/0, opaque, accum-rgba 0/0/0/0, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]], chosen GLCaps[4 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 16/16/16/16, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]]]], awtComponent AWT-GLCanvas[Realized false, null-drawable, Realized false, Factory null, handle 0x0, Drawable size -1x-1, AWT pos 0/0, size 0x0, visible true, AWTGraphicsConfiguration[AWTGraphicsScreen[AWTGraphicsDevice[type AWT[subType null], connection \Display0, unitID 0, awtDevice Win32GraphicsDevice[screen=0], handle 0x0], idx 0], chosen GLCaps[4 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 16/16/16/16, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]], requested GLCaps[on-scr, rgba 8/8/8/0, opaque, accum-rgba 0/0/0/0, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]], sun.awt.Win32GraphicsConfig@18c56d[dev=Win32GraphicsDevice[screen=0],pixfmt=4], encapsulated WindowsWGLGraphicsConfiguration[DefaultGraphicsScreen[WindowsGraphicsDevice[type Windows, connection decon, unitID 0, handle 0x0], idx 0], pfdID 4, ARB-Choosen true, requested GLCaps[on-scr, rgba 8/8/8/0, opaque, accum-rgba 0/0/0/0, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]], chosen GLCaps[4 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 16/16/16/16, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]]]]]]] GLCanvas: TK disableBackgroundErase error: null GLCanvas: TK disableBackgroundErase error: null main - Info: addNotify - end: peer: sun.awt.windows.WCanvasPeer[AWT-GLCanvas[Realized false, jogamp.opengl.windows.wgl.WindowsOnscreenWGLDrawable, Realized false, Factory jogamp.opengl.windows.wgl.WindowsWGLDrawableFactory@18fe7c3, handle 0x0, Drawable size 0x0, AWT pos 0/0, size 0x0, visible true, AWTGraphicsConfiguration[AWTGraphicsScreen[AWTGraphicsDevice[type AWT[subType null], connection \Display0, unitID 0, awtDevice Win32GraphicsDevice[screen=0], handle 0x0], idx 0], chosen GLCaps[4 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 16/16/16/16, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]], requested GLCaps[on-scr, rgba 8/8/8/0, opaque, accum-rgba 0/0/0/0, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]], sun.awt.Win32GraphicsConfig@18c56d[dev=Win32GraphicsDevice[screen=0],pixfmt=4], encapsulated WindowsWGLGraphicsConfiguration[DefaultGraphicsScreen[WindowsGraphicsDevice[type Windows, connection decon, unitID 0, handle 0x0], idx 0], pfdID 4, ARB-Choosen true, requested GLCaps[on-scr, rgba 8/8/8/0, opaque, accum-rgba 0/0/0/0, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]], chosen GLCaps[4 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 16/16/16/16, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]]]]]] setRealized: jogamp.opengl.windows.wgl.WindowsOnscreenWGLDrawable false -> true !!! setPixelFormat (post): hdc 0xffffffffc0011147, 0 -> 4, set: true java.lang.Exception: Stack trace at java.lang.Thread.dumpStack(Thread.java:1206) at jogamp.opengl.windows.wgl.WindowsWGLGraphicsConfigurationFactory.updateGraphicsConfiguration(WindowsWGLGraphicsConfigurationFactory.java:259) at jogamp.opengl.windows.wgl.WindowsWGLGraphicsConfiguration.updateGraphicsConfiguration(WindowsWGLGraphicsConfiguration.java:136) at jogamp.opengl.windows.wgl.WindowsWGLDrawable.setRealizedImpl(WindowsWGLDrawable.java:71) at jogamp.opengl.GLDrawableImpl.setRealized(GLDrawableImpl.java:155) at javax.media.opengl.awt.GLCanvas.validateGLDrawable(GLCanvas.java:559) at javax.media.opengl.awt.GLCanvas.display(GLCanvas.java:382) at test.SimpleScene$CustomCanvas.display(SimpleScene.java:176) at javax.media.opengl.awt.GLCanvas.paint(GLCanvas.java:487) at sun.awt.RepaintArea.paintComponent(RepaintArea.java:248) at sun.awt.RepaintArea.paint(RepaintArea.java:224) at sun.awt.windows.WComponentPeer.handleEvent(WComponentPeer.java:310) at java.awt.Component.dispatchEventImpl(Component.java:4706) at java.awt.Component.dispatchEvent(Component.java:4460) at java.awt.EventQueue.dispatchEvent(EventQueue.java:599) 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) !!! WindowsWGLDrawable.setRealized(true): WindowsWGLGraphicsConfiguration[DefaultGraphicsScreen[WindowsGraphicsDevice[type Windows, connection decon, unitID 0, handle 0x0], idx 0], pfdID 4, ARB-Choosen true, requested GLCaps[on-scr, rgba 8/8/8/0, opaque, accum-rgba 0/0/0/0, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]], chosen GLCaps[4 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 16/16/16/16, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]]] java.lang.Throwable: AWT-EventQueue-0 - Realized Drawable: jogamp.opengl.windows.wgl.WindowsOnscreenWGLDrawable[Realized true, Factory jogamp.opengl.windows.wgl.WindowsWGLDrawableFactory@18fe7c3, handle 0xffffffffc0011147, Window JAWT-Window[windowHandle 0x76041c, surfaceHandle 0xffffffffc0011147, bounds [ 4 / 23 292 x 273 ], pos 4/23, size 292x273, visible true, lockedExt false, config AWTGraphicsConfiguration[AWTGraphicsScreen[AWTGraphicsDevice[type AWT[subType null], connection \Display0, unitID 0, awtDevice Win32GraphicsDevice[screen=0], handle 0x0], idx 0], chosen GLCaps[4 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 16/16/16/16, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]], requested GLCaps[on-scr, rgba 8/8/8/0, opaque, accum-rgba 0/0/0/0, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]], sun.awt.Win32GraphicsConfig@18c56d[dev=Win32GraphicsDevice[screen=0],pixfmt=4], encapsulated WindowsWGLGraphicsConfiguration[DefaultGraphicsScreen[WindowsGraphicsDevice[type Windows, connection decon, unitID 0, handle 0x0], idx 0], pfdID 4, ARB-Choosen true, requested GLCaps[on-scr, rgba 8/8/8/0, opaque, accum-rgba 0/0/0/0, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]], chosen GLCaps[4 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 16/16/16/16, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]]]], awtComponent AWT-GLCanvas[Realized true, jogamp.opengl.windows.wgl.WindowsOnscreenWGLDrawable, Realized true, Factory jogamp.opengl.windows.wgl.WindowsWGLDrawableFactory@18fe7c3, handle 0xffffffffc0011147, Drawable size 292x273, AWT pos 4/23, size 292x273, visible true, AWTGraphicsConfiguration[AWTGraphicsScreen[AWTGraphicsDevice[type AWT[subType null], connection \Display0, unitID 0, awtDevice Win32GraphicsDevice[screen=0], handle 0x0], idx 0], chosen GLCaps[4 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 16/16/16/16, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]], requested GLCaps[on-scr, rgba 8/8/8/0, opaque, accum-rgba 0/0/0/0, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]], sun.awt.Win32GraphicsConfig@18c56d[dev=Win32GraphicsDevice[screen=0],pixfmt=4], encapsulated WindowsWGLGraphicsConfiguration[DefaultGraphicsScreen[WindowsGraphicsDevice[type Windows, connection decon, unitID 0, handle 0x0], idx 0], pfdID 4, ARB-Choosen true, requested GLCaps[on-scr, rgba 8/8/8/0, opaque, accum-rgba 0/0/0/0, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]], chosen GLCaps[4 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 16/16/16/16, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]]]]]]] at javax.media.opengl.awt.GLCanvas.validateGLDrawable(GLCanvas.java:565) at javax.media.opengl.awt.GLCanvas.display(GLCanvas.java:382) at test.SimpleScene$CustomCanvas.display(SimpleScene.java:176) at javax.media.opengl.awt.GLCanvas.paint(GLCanvas.java:487) at sun.awt.RepaintArea.paintComponent(RepaintArea.java:248) at sun.awt.RepaintArea.paint(RepaintArea.java:224) at sun.awt.windows.WComponentPeer.handleEvent(WComponentPeer.java:310) at java.awt.Component.dispatchEventImpl(Component.java:4706) at java.awt.Component.dispatchEvent(Component.java:4460) at java.awt.EventQueue.dispatchEvent(EventQueue.java:599) 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) java.lang.Exception: Info: setGL (OpenGL null): AWT-EventQueue-0, <null> -> GL4bcImpl, jogamp.opengl.gl4.GL4bcImpl@ecb281 at jogamp.opengl.GLContextImpl.setGL(GLContextImpl.java:178) at jogamp.opengl.GLContextImpl.setGLFunctionAvailability(GLContextImpl.java:822) at jogamp.opengl.windows.wgl.WindowsWGLContext.createImpl(WindowsWGLContext.java:301) at jogamp.opengl.GLContextImpl.makeCurrentLocking(GLContextImpl.java:414) at jogamp.opengl.GLContextImpl.makeCurrent(GLContextImpl.java:353) at jogamp.opengl.GLDrawableHelper.invokeGL(GLDrawableHelper.java:348) at javax.media.opengl.awt.GLCanvas.maybeDoSingleThreadedWorkaround(GLCanvas.java:772) at javax.media.opengl.awt.GLCanvas.display(GLCanvas.java:388) at test.SimpleScene$CustomCanvas.display(SimpleScene.java:176) at javax.media.opengl.awt.GLCanvas.paint(GLCanvas.java:487) at sun.awt.RepaintArea.paintComponent(RepaintArea.java:248) at sun.awt.RepaintArea.paint(RepaintArea.java:224) at sun.awt.windows.WComponentPeer.handleEvent(WComponentPeer.java:310) at java.awt.Component.dispatchEventImpl(Component.java:4706) at java.awt.Component.dispatchEvent(Component.java:4460) at java.awt.EventQueue.dispatchEvent(EventQueue.java:599) 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) AWT-EventQueue-0: !!! Initializing WGL extension address table: Windows_decon_0 AWT-EventQueue-0: !!! GLContext WGL ProcAddressTable reusing key(Windows_decon_0) -> 24216257 AWT-EventQueue-0: !!! Context FQN: Windows_decon_0-0x2202 AWT-EventQueue-0: !!! GLContext GL ProcAddressTable reusing key(Windows_decon_0-0x2202) -> 29855319 AWT-EventQueue-0: !!! GLContext GL ExtensionAvailabilityCache reusing key(Windows_decon_0-0x2202) -> 11533424 AWT-EventQueue-0: createContextImpl: NOT OK (ARB, initial) - extension not available - share 0 WindowsWGLContext.createContext failed, fall back to !ARB context 0.0 (old) - @creation AWT-EventQueue-0: createImpl: OK (old) share 0 AWT-EventQueue-0: !!! Create GL context OK: 0x4b0002 for jogamp.opengl.windows.wgl.WindowsOnscreenWGLContext java.lang.Exception: Info: setGL (OpenGL 1.3 (compatibility profile, any, old) - 1.3.0 - Build 4.14.10.4342): AWT-EventQueue-0, GL4bcImpl, jogamp.opengl.gl4.GL4bcImpl@ecb281 -> DebugGL4bc, DebugGL4bc [ implementing javax.media.opengl.GL4bc, downstream: jogamp.opengl.gl4.GL4bcImpl@ecb281 ] at jogamp.opengl.GLContextImpl.setGL(GLContextImpl.java:178) at jogamp.opengl.GLContextImpl.makeCurrent(GLContextImpl.java:375) at jogamp.opengl.GLDrawableHelper.invokeGL(GLDrawableHelper.java:348) at javax.media.opengl.awt.GLCanvas.maybeDoSingleThreadedWorkaround(GLCanvas.java:772) at javax.media.opengl.awt.GLCanvas.display(GLCanvas.java:388) at test.SimpleScene$CustomCanvas.display(SimpleScene.java:176) at javax.media.opengl.awt.GLCanvas.paint(GLCanvas.java:487) at sun.awt.RepaintArea.paintComponent(RepaintArea.java:248) at sun.awt.RepaintArea.paint(RepaintArea.java:224) at sun.awt.windows.WComponentPeer.handleEvent(WComponentPeer.java:310) at java.awt.Component.dispatchEventImpl(Component.java:4706) at java.awt.Component.dispatchEvent(Component.java:4460) at java.awt.EventQueue.dispatchEvent(EventQueue.java:599) 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) GLPipelineFactory: Start jogamp.opengl.gl4.GL4bcImpl, req. Interface: null -> javax.media.opengl.Debug GLPipelineFactory: Try jogamp.opengl.gl4.GL4bcImpl Interface[9]: javax.media.opengl.GL4bc GLPipelineFactory: jogamp.opengl.gl4.GL4bcImpl _is_ instance of javax.media.opengl.GL4bc GLPipelineFactory: Got : javax.media.opengl.DebugGL4bc, base interface: javax.media.opengl.GL4bc GLPipelineFactory: Start javax.media.opengl.DebugGL4bc, req. Interface: null -> javax.media.opengl.Trace GLPipelineFactory: Try javax.media.opengl.DebugGL4bc Interface[9]: javax.media.opengl.GL4bc GLPipelineFactory: javax.media.opengl.DebugGL4bc _is_ instance of javax.media.opengl.GL4bc GLPipelineFactory: Got : javax.media.opengl.TraceGL4bc, base interface: javax.media.opengl.GL4bc java.lang.Exception: Info: setGL (OpenGL 1.3 (compatibility profile, any, old) - 1.3.0 - Build 4.14.10.4342): AWT-EventQueue-0, DebugGL4bc, DebugGL4bc [ implementing javax.media.opengl.GL4bc, downstream: jogamp.opengl.gl4.GL4bcImpl@ecb281 ] -> TraceGL4bc, TraceGL4bc [ implementing javax.media.opengl.GL4bc, downstream: DebugGL4bc [ implementing javax.media.opengl.GL4bc, downstream: jogamp.opengl.gl4.GL4bcImpl@ecb281 ] ] at jogamp.opengl.GLContextImpl.setGL(GLContextImpl.java:178) at jogamp.opengl.GLContextImpl.makeCurrent(GLContextImpl.java:378) at jogamp.opengl.GLDrawableHelper.invokeGL(GLDrawableHelper.java:348) at javax.media.opengl.awt.GLCanvas.maybeDoSingleThreadedWorkaround(GLCanvas.java:772) at javax.media.opengl.awt.GLCanvas.display(GLCanvas.java:388) at test.SimpleScene$CustomCanvas.display(SimpleScene.java:176) at javax.media.opengl.awt.GLCanvas.paint(GLCanvas.java:487) at sun.awt.RepaintArea.paintComponent(RepaintArea.java:248) at sun.awt.RepaintArea.paint(RepaintArea.java:224) at sun.awt.windows.WComponentPeer.handleEvent(WComponentPeer.java:310) at java.awt.Component.dispatchEventImpl(Component.java:4706) at java.awt.Component.dispatchEvent(Component.java:4460) at java.awt.EventQueue.dispatchEvent(EventQueue.java:599) 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) GLDrawableHelper GLAnimatorControl: null, GLEventListeners num 1 [test.SimpleScene@119298d[init false], ].invokeGL(): Running initAction java.lang.Exception: Info: setGL (OpenGL 1.3 (compatibility profile, any, old) - 1.3.0 - Build 4.14.10.4342): AWT-EventQueue-0, TraceGL4bc, TraceGL4bc [ implementing javax.media.opengl.GL4bc, downstream: DebugGL4bc [ implementing javax.media.opengl.GL4bc, downstream: jogamp.opengl.gl4.GL4bcImpl@ecb281 ] ] -> TraceGL4bc, TraceGL4bc [ implementing javax.media.opengl.GL4bc, downstream: DebugGL4bc [ implementing javax.media.opengl.GL4bc, downstream: jogamp.opengl.gl4.GL4bcImpl@ecb281 ] ] at jogamp.opengl.GLContextImpl.setGL(GLContextImpl.java:178) at javax.media.opengl.awt.GLCanvas.setGL(GLCanvas.java:680) at test.SimpleScene.init(SimpleScene.java:90) at jogamp.opengl.GLDrawableHelper.init(GLDrawableHelper.java:155) at jogamp.opengl.GLDrawableHelper.init(GLDrawableHelper.java:175) at javax.media.opengl.awt.GLCanvas$InitAction.run(GLCanvas.java:859) at jogamp.opengl.GLDrawableHelper.invokeGL(GLDrawableHelper.java:356) at javax.media.opengl.awt.GLCanvas.maybeDoSingleThreadedWorkaround(GLCanvas.java:772) at javax.media.opengl.awt.GLCanvas.display(GLCanvas.java:388) at test.SimpleScene$CustomCanvas.display(SimpleScene.java:176) at javax.media.opengl.awt.GLCanvas.paint(GLCanvas.java:487) at sun.awt.RepaintArea.paintComponent(RepaintArea.java:248) at sun.awt.RepaintArea.paint(RepaintArea.java:224) at sun.awt.windows.WComponentPeer.handleEvent(WComponentPeer.java:310) at java.awt.Component.dispatchEventImpl(Component.java:4706) at java.awt.Component.dispatchEvent(Component.java:4460) at java.awt.EventQueue.dispatchEvent(EventQueue.java:599) 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) glClearColor(<float> 0.0, <float> 0.0, <float> 0.0, <float> 1.0) glPolygonMode(<int> 0x408, <int> 0x1B02) glFrontFace(<int> 0x901) glGetFloatv(<int> 0xB12, <[F>, <int> 0x0) AWT-EventQueue-0 - reshape: 292x273 glViewport(<int> 0x0, <int> 0x0, <int> 0x124, <int> 0x111) glClear(<int> 0x4000) glRectd(<double> 0.5, <double> 0.5, <double> -0.5, <double> -0.5) glBegin(<int> 0x4) glColor3f(<float> 1.0, <float> 0.0, <float> 0.0) glVertex2d(<double> 0.256310908227524, <double> 0.256310908227524) glColor3f(<float> 0.0, <float> 1.0, <float> 0.0) glVertex2d(<double> 0.0, <double> -0.256310908227524) glColor3f(<float> 0.0, <float> 0.0, <float> 1.0) glVertex2d(<double> 0.9665943918332972, <double> -0.9665943918332972) glEnd() glBegin(<int> 0x9) glColor3f(<float> 1.0, <float> 0.0, <float> 0.0) glVertex3f(<float> -1.0, <float> 3.0, <float> 0.0) glVertex3f(<float> 0.0, <float> 0.0, <float> 0.0) glVertex3f(<float> 1.0, <float> 3.0, <float> 0.0) glVertex3f(<float> 0.0, <float> 2.0, <float> 0.0) glEnd() glClear(<int> 0x4000) glRectd(<double> 0.5, <double> 0.5, <double> -0.5, <double> -0.5) glBegin(<int> 0x4) glColor3f(<float> 1.0, <float> 0.0, <float> 0.0) glVertex2d(<double> 0.26596387560898166, <double> 0.26596387560898166) glColor3f(<float> 0.0, <float> 1.0, <float> 0.0) glVertex2d(<double> 0.0, <double> -0.26596387560898166) glColor3f(<float> 0.0, <float> 0.0, <float> 1.0) glVertex2d(<double> 0.9639829961524478, <double> -0.9639829961524478) glEnd() glBegin(<int> 0x9) glColor3f(<float> 1.0, <float> 0.0, <float> 0.0) glVertex3f(<float> -1.0, <float> 3.0, <float> 0.0) glVertex3f(<float> 0.0, <float> 0.0, <float> 0.0) glVertex3f(<float> 1.0, <float> 3.0, <float> 0.0) glVertex3f(<float> 0.0, <float> 2.0, <float> 0.0) glEnd() --------------------------------------------- WHEN BROKEN: java.lang.Exception: main - Info: removeNotify - start at javax.media.opengl.awt.GLCanvas.removeNotify(GLCanvas.java:588) at java.awt.Container.remove(Container.java:1140) at java.awt.Container.remove(Container.java:1198) at test.SimpleScene.cleanup(SimpleScene.java:163) at test.SimpleScene.main(SimpleScene.java:60) java.lang.Exception: Info: dispose(false) - start, hasContext true, hasDrawable true at javax.media.opengl.awt.GLCanvas.dispose(GLCanvas.java:398) at javax.media.opengl.awt.GLCanvas.removeNotify(GLCanvas.java:599) at java.awt.Container.remove(Container.java:1140) at java.awt.Container.remove(Container.java:1198) at test.SimpleScene.cleanup(SimpleScene.java:163) at test.SimpleScene.main(SimpleScene.java:60) setRealized: jogamp.opengl.windows.wgl.WindowsOnscreenWGLDrawable true -> false main - GLCanvas.dispose(false): closed GraphicsDevice: WindowsGraphicsDevice[type Windows, connection decon, unitID 0, handle 0x0], result: false dispose(false) - stop main - Info: removeNotify - end, peer: null java.lang.Exception: main - Info: addNotify - start, bounds: java.awt.Rectangle[x=0,y=0,width=0,height=0] at javax.media.opengl.awt.GLCanvas.addNotify(GLCanvas.java:503) at java.awt.Container.addImpl(Container.java:1068) at java.awt.Container.add(Container.java:365) at test.SimpleScene.init(SimpleScene.java:152) at test.SimpleScene.main(SimpleScene.java:61) GraphicsConfigurationFactory.getFactory() class javax.media.nativewindow.awt.AWTGraphicsDevice -> jogamp.opengl.windows.wgl.awt.WindowsAWTWGLGraphicsConfigurationFactory@b169f8 WindowsAWTWGLGraphicsConfigurationFactory: got AWTGraphicsScreen[AWTGraphicsDevice[type AWT[subType null], connection \Display0, unitID 0, awtDevice Win32GraphicsDevice[screen=0], handle 0x0], idx 0] GraphicsConfigurationFactory.getFactory() class javax.media.nativewindow.windows.WindowsGraphicsDevice -> jogamp.opengl.windows.wgl.WindowsWGLGraphicsConfigurationFactory@12f6684 updateGraphicsConfiguration(using shared): hdc 0xffffffffc0011147 !!! user chosen caps GLCaps[on-scr, rgba 8/8/8/0, opaque, accum-rgba 0/0/0/0, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]] wglChoosePixelFormatARB: NumFormats (wglChoosePixelFormatARB) accelMode 0x2027: 0 wglChoosePixelFormatARB: NumFormats (wglChoosePixelFormatARB) accelMode 0x2026: 0 wglChoosePixelFormatARB: NumFormats (wglChoosePixelFormatARB) accelMode 0xffffffff: 0 updateGraphicsConfigurationARB: wglChoosePixelFormatARB failed with: GLCaps[on-scr, rgba 8/8/8/0, opaque, accum-rgba 0/0/0/0, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]] updateGraphicsConfigurationARB: NumFormats (wglAllARBPFIDs) 42 updateGraphicsConfigurationARB: 42 pfd ids, onscreen true, pbuffer false, 18 glcaps Desired: GLCaps[on-scr, rgba 8/8/8/0, opaque, accum-rgba 0/0/0/0, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]] Available: 18 0: GLCaps[1 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 0/0/0/0, dp/st/ms: 0/0/0, one, mono , hw, GLProfile[GL2/GL2]] 1: GLCaps[2 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 16/16/16/16, dp/st/ms: 0/0/0, dbl, mono , hw, GLProfile[GL2/GL2]] 2: GLCaps[3 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 0/0/0/0, dp/st/ms: 16/0/0, one, mono , hw, GLProfile[GL2/GL2]] 3: GLCaps[4 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 16/16/16/16, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]] 4: GLCaps[5 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 0/0/0/0, dp/st/ms: 24/8/0, one, mono , hw, GLProfile[GL2/GL2]] 5: GLCaps[6 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 16/16/16/16, dp/st/ms: 24/8/0, dbl, mono , hw, GLProfile[GL2/GL2]] 6: GLCaps[7 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 11/11/10/0, dp/st/ms: 32/8/0, one, mono , sw, GLProfile[GL2/GL2]] 7: GLCaps[8 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 11/11/10/0, dp/st/ms: 16/8/0, one, mono , sw, GLProfile[GL2/GL2]] 8: GLCaps[9 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 11/11/10/0, dp/st/ms: 32/8/0, dbl, mono , sw, GLProfile[GL2/GL2]] 9: GLCaps[10 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 11/11/10/0, dp/st/ms: 16/8/0, dbl, mono , sw, GLProfile[GL2/GL2]] 10: GLCaps[11 arb: on-scr, rgba 5/6/5/8, opaque, accum-rgba 8/8/8/8, dp/st/ms: 32/8/0, one, mono , sw, GLProfile[GL2/GL2]] 11: GLCaps[12 arb: on-scr, rgba 5/6/5/8, opaque, accum-rgba 8/8/8/8, dp/st/ms: 16/8/0, one, mono , sw, GLProfile[GL2/GL2]] 12: GLCaps[13 arb: on-scr, rgba 5/6/5/8, opaque, accum-rgba 8/8/8/8, dp/st/ms: 32/8/0, dbl, mono , sw, GLProfile[GL2/GL2]] 13: GLCaps[14 arb: on-scr, rgba 5/6/5/8, opaque, accum-rgba 8/8/8/8, dp/st/ms: 16/8/0, dbl, mono , sw, GLProfile[GL2/GL2]] 14: GLCaps[15 arb: on-scr, rgba 8/8/8/0, opaque, accum-rgba 0/0/0/0, dp/st/ms: 32/8/0, one, mono , sw, GLProfile[GL2/GL2]] 15: GLCaps[16 arb: on-scr, rgba 8/8/8/0, opaque, accum-rgba 0/0/0/0, dp/st/ms: 16/8/0, one, mono , sw, GLProfile[GL2/GL2]] 16: GLCaps[17 arb: on-scr, rgba 8/8/8/0, opaque, accum-rgba 0/0/0/0, dp/st/ms: 32/8/0, dbl, mono , sw, GLProfile[GL2/GL2]] 17: GLCaps[18 arb: on-scr, rgba 8/8/8/0, opaque, accum-rgba 0/0/0/0, dp/st/ms: 16/8/0, dbl, mono , sw, GLProfile[GL2/GL2]] Window system's recommended choice: -1 Scores: [ -1384, -448, -1288, -352, -1360, -424, -2824, -2728, -1824, -1728, 2536, 2440, 1536, 1440, 2504, 2408, 1504, 1408 ] Chosen index: 3 Chosen capabilities: GLCaps[4 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 16/16/16/16, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]] chooseCapabilities: Chosen idx 3 !!! chosen pfdID (ARB): native recommended 0 chosen GLCaps[4 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 16/16/16/16, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]] *** setCapsPFD: GLCaps[4 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 16/16/16/16, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]] WindowsAWTWGLGraphicsConfigurationFactory: Found new AWT PFD ID 4 -> WindowsWGLGraphicsConfiguration[DefaultGraphicsScreen[WindowsGraphicsDevice[type Windows, connection decon, unitID 0, handle 0x0], idx 0], pfdID 4, ARB-Choosen true, requested GLCaps[on-scr, rgba 8/8/8/0, opaque, accum-rgba 0/0/0/0, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]], chosen GLCaps[4 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 16/16/16/16, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]]] GLDrawableFactoryImpl.createGLDrawable -> OnscreenDrawable: JAWT-Window[windowHandle 0x0, surfaceHandle 0x0, bounds [ 0 / 0 0 x 0 ], pos 0/0, size 0x0, visible true, lockedExt false, config AWTGraphicsConfiguration[AWTGraphicsScreen[AWTGraphicsDevice[type AWT[subType null], connection \Display0, unitID 0, awtDevice Win32GraphicsDevice[screen=0], handle 0x0], idx 0], chosen GLCaps[4 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 16/16/16/16, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]], requested GLCaps[on-scr, rgba 8/8/8/0, opaque, accum-rgba 0/0/0/0, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]], sun.awt.Win32GraphicsConfig@19360e2[dev=Win32GraphicsDevice[screen=0],pixfmt=4], encapsulated WindowsWGLGraphicsConfiguration[DefaultGraphicsScreen[WindowsGraphicsDevice[type Windows, connection decon, unitID 0, handle 0x0], idx 0], pfdID 4, ARB-Choosen true, requested GLCaps[on-scr, rgba 8/8/8/0, opaque, accum-rgba 0/0/0/0, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]], chosen GLCaps[4 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 16/16/16/16, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]]]], awtComponent AWT-GLCanvas[Realized false, null-drawable, Realized false, Factory null, handle 0x0, Drawable size -1x-1, AWT pos 0/0, size 0x0, visible true, AWTGraphicsConfiguration[AWTGraphicsScreen[AWTGraphicsDevice[type AWT[subType null], connection \Display0, unitID 0, awtDevice Win32GraphicsDevice[screen=0], handle 0x0], idx 0], chosen GLCaps[4 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 16/16/16/16, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]], requested GLCaps[on-scr, rgba 8/8/8/0, opaque, accum-rgba 0/0/0/0, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]], sun.awt.Win32GraphicsConfig@19360e2[dev=Win32GraphicsDevice[screen=0],pixfmt=4], encapsulated WindowsWGLGraphicsConfiguration[DefaultGraphicsScreen[WindowsGraphicsDevice[type Windows, connection decon, unitID 0, handle 0x0], idx 0], pfdID 4, ARB-Choosen true, requested GLCaps[on-scr, rgba 8/8/8/0, opaque, accum-rgba 0/0/0/0, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]], chosen GLCaps[4 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 16/16/16/16, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]]]]]] GLDrawableFactoryImpl.createGLDrawable: jogamp.opengl.windows.wgl.WindowsOnscreenWGLDrawable[Realized false, Factory jogamp.opengl.windows.wgl.WindowsWGLDrawableFactory@18fe7c3, handle 0x0, Window JAWT-Window[windowHandle 0x0, surfaceHandle 0x0, bounds [ 0 / 0 0 x 0 ], pos 0/0, size 0x0, visible true, lockedExt false, config AWTGraphicsConfiguration[AWTGraphicsScreen[AWTGraphicsDevice[type AWT[subType null], connection \Display0, unitID 0, awtDevice Win32GraphicsDevice[screen=0], handle 0x0], idx 0], chosen GLCaps[4 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 16/16/16/16, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]], requested GLCaps[on-scr, rgba 8/8/8/0, opaque, accum-rgba 0/0/0/0, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]], sun.awt.Win32GraphicsConfig@19360e2[dev=Win32GraphicsDevice[screen=0],pixfmt=4], encapsulated WindowsWGLGraphicsConfiguration[DefaultGraphicsScreen[WindowsGraphicsDevice[type Windows, connection decon, unitID 0, handle 0x0], idx 0], pfdID 4, ARB-Choosen true, requested GLCaps[on-scr, rgba 8/8/8/0, opaque, accum-rgba 0/0/0/0, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]], chosen GLCaps[4 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 16/16/16/16, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]]]], awtComponent AWT-GLCanvas[Realized false, null-drawable, Realized false, Factory null, handle 0x0, Drawable size -1x-1, AWT pos 0/0, size 0x0, visible true, AWTGraphicsConfiguration[AWTGraphicsScreen[AWTGraphicsDevice[type AWT[subType null], connection \Display0, unitID 0, awtDevice Win32GraphicsDevice[screen=0], handle 0x0], idx 0], chosen GLCaps[4 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 16/16/16/16, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]], requested GLCaps[on-scr, rgba 8/8/8/0, opaque, accum-rgba 0/0/0/0, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]], sun.awt.Win32GraphicsConfig@19360e2[dev=Win32GraphicsDevice[screen=0],pixfmt=4], encapsulated WindowsWGLGraphicsConfiguration[DefaultGraphicsScreen[WindowsGraphicsDevice[type Windows, connection decon, unitID 0, handle 0x0], idx 0], pfdID 4, ARB-Choosen true, requested GLCaps[on-scr, rgba 8/8/8/0, opaque, accum-rgba 0/0/0/0, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]], chosen GLCaps[4 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 16/16/16/16, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]]]]]]] GLCanvas: TK disableBackgroundErase error: null GLCanvas: TK disableBackgroundErase error: null main - Info: addNotify - end: peer: sun.awt.windows.WCanvasPeer[AWT-GLCanvas[Realized false, jogamp.opengl.windows.wgl.WindowsOnscreenWGLDrawable, Realized false, Factory jogamp.opengl.windows.wgl.WindowsWGLDrawableFactory@18fe7c3, handle 0x0, Drawable size 0x0, AWT pos 0/0, size 0x0, visible true, AWTGraphicsConfiguration[AWTGraphicsScreen[AWTGraphicsDevice[type AWT[subType null], connection \Display0, unitID 0, awtDevice Win32GraphicsDevice[screen=0], handle 0x0], idx 0], chosen GLCaps[4 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 16/16/16/16, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]], requested GLCaps[on-scr, rgba 8/8/8/0, opaque, accum-rgba 0/0/0/0, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]], sun.awt.Win32GraphicsConfig@19360e2[dev=Win32GraphicsDevice[screen=0],pixfmt=4], encapsulated WindowsWGLGraphicsConfiguration[DefaultGraphicsScreen[WindowsGraphicsDevice[type Windows, connection decon, unitID 0, handle 0x0], idx 0], pfdID 4, ARB-Choosen true, requested GLCaps[on-scr, rgba 8/8/8/0, opaque, accum-rgba 0/0/0/0, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]], chosen GLCaps[4 arb: on-scr, rgba 5/6/5/0, opaque, accum-rgba 16/16/16/16, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]]]]]] setRealized: jogamp.opengl.windows.wgl.WindowsOnscreenWGLDrawable false -> true CRASHED ON COUNT #: 76 javax.media.opengl.GLException: Unable to set pixel format 4 for device context 0xfffffffff0010d3a: error code 0 at jogamp.opengl.windows.wgl.WindowsWGLGraphicsConfigurationFactory.updateGraphicsConfiguration(WindowsWGLGraphicsConfigurationFactory.java:251) at jogamp.opengl.windows.wgl.WindowsWGLGraphicsConfiguration.updateGraphicsConfiguration(WindowsWGLGraphicsConfiguration.java:136) at jogamp.opengl.windows.wgl.WindowsWGLDrawable.setRealizedImpl(WindowsWGLDrawable.java:71) at jogamp.opengl.GLDrawableImpl.setRealized(GLDrawableImpl.java:155) at javax.media.opengl.awt.GLCanvas.validateGLDrawable(GLCanvas.java:559) at javax.media.opengl.awt.GLCanvas.display(GLCanvas.java:382) at test.SimpleScene$CustomCanvas.display(SimpleScene.java:176) at javax.media.opengl.awt.GLCanvas.paint(GLCanvas.java:487) at sun.awt.RepaintArea.paintComponent(RepaintArea.java:248) at sun.awt.RepaintArea.paint(RepaintArea.java:224) at sun.awt.windows.WComponentPeer.handleEvent(WComponentPeer.java:310) at java.awt.Component.dispatchEventImpl(Component.java:4706) at java.awt.Component.dispatchEvent(Component.java:4460) at java.awt.EventQueue.dispatchEvent(EventQueue.java:599) 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) main-SharedResourceRunner release START !!! Shutdown Shared: !!! Device : WindowsGraphicsDevice[type Windows, connection decon, unitID 0, handle 0x0] !!! Screen : DefaultGraphicsScreen[WindowsGraphicsDevice[type Windows, connection decon, unitID 0, handle 0x0], idx 0] !!! Drawable: jogamp.opengl.windows.wgl.WindowsDummyWGLDrawable[Realized true, Factory jogamp.opengl.windows.wgl.WindowsWGLDrawableFactory@18fe7c3, handle 0x0, Window GDISurface[config WindowsWGLGraphicsConfiguration[DefaultGraphicsScreen[WindowsGraphicsDevice[type Windows, connection decon, unitID 0, handle 0x0], idx 0], pfdID 4, 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, dbl, mono , hw, GLProfile[GL2/GL2]], chosen GLCaps[4 gdi: on-scr, rgba 5/6/5/0, opaque, accum-rgba 16/16/16/16, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]]], displayHandle 0x0, windowHandle 0x15b02e0, surfaceHandle 0x0, size 64x64]] !!! CTX : jogamp.opengl.windows.wgl.WindowsWGLContext [OpenGL 1.3, options 0x22, 1.3 (compatibility profile, any, old) - 1.3.0 - Build 4.14.10.4342, handle 0x10000, TraceGL4bc [ implementing javax.media.opengl.GL4bc, downstream: DebugGL4bc [ implementing javax.media.opengl.GL4bc, downstream: jogamp.opengl.gl4.GL4bcImpl@1ba34f2 ] ], Drawable: jogamp.opengl.windows.wgl.WindowsDummyWGLDrawable[Realized true, Factory jogamp.opengl.windows.wgl.WindowsWGLDrawableFactory@18fe7c3, handle 0x0, Window GDISurface[config WindowsWGLGraphicsConfiguration[DefaultGraphicsScreen[WindowsGraphicsDevice[type Windows, connection decon, unitID 0, handle 0x0], idx 0], pfdID 4, 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, dbl, mono , hw, GLProfile[GL2/GL2]], chosen GLCaps[4 gdi: on-scr, rgba 5/6/5/0, opaque, accum-rgba 16/16/16/16, dp/st/ms: 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2]]], displayHandle 0x0, windowHandle 0x15b02e0, surfaceHandle 0x0, size 64x64]]] main-SharedResourceRunner release END RegisteredClassFactory shutdownSharedClasses 0/1: RegisteredClass[handle 0x400000, _dummyWindow_clazz0] |
In reply to this post by Wade Walker
Wade,
I'm attaching a simple application that simulates switching back and forth between two frames using a loop. I set up a refresh speed value using a Thread.sleep(). I've been experimenting with some different speeds on both the 740 and 260 machines. The 740 never gets the pixel format errors, even when I crank up the speed. It tends to work best to produce the error on the 260 at about 250ms. Thank you, Rob SimpleScene.java |
Administrator
|
I got your program running over the weekend and got some crashes, though not exactly the same one as you (see bug report at https://jogamp.org/bugzilla/show_bug.cgi?id=498 for details). I'll try it on another machine that's easier to debug on and see if it happens there too.
|
Great! I appreciate your help.
|
Administrator
|
Hi Rob,
The problem may just be multithreading bugs in your code I noticed that the errors occur when display events cause asynchronous accesses to your static variables when they're in the midst of changing (due to the thread that's setting up and tearing down). When I add some synchronization calls to make it impossible to interrupt a setup or teardown operation with a display, it seems to work fine. Try this new version (SimpleScene.java) and let me know if it works for you. I wouldn't recommend that you do what I've done, however -- it's probably wiser to get rid of static variables in a multithreaded program instead of trying to synchronize the problems away. |
Wade,
I thought it might be some kind of multithreading issue also and I have tried various thread fixes and haven't found a solution. I did try the version of the SimpleScene app that you sent over and I got the exact same "Unable to set pixel format 4 for device context" error. I did notice that the error that you were seeing with the original code I sent over was a little different than what I was getting though. I wonder if maybe the changes you made to the app fixed the issues you were seeing but not the issues I have been seeing on the gx260? It seems like maybe we could be seeing two separate problems? |
Administrator
|
Hmm, I'm not quite ready to give up on the thread explanation yet. The thing that makes me suspect multithreading errors is that both of our stack dumps come out of redraw events, which are triggered asynchronous to the main loop that you've set up (the error is in the AWT event thread, and your main loop is in the main thread). When one thread is asynchronously accessing data that's being changed by another, that sounds like a recipe for multithreading problems
I just thought of a new failure mode for this program -- the AWT thread could fire a redraw right between your calls to ss.cleanup() and ss.init(), while GL is in a non-set-up state. My previous version didn't account for this. Try this new version (SimpleScene.java) to see if that works for you. I've just changed the synchronization to insure that render() can never happen between cleanup() and init(). |
Wade,
I tried the last code you sent over and I'm still getting the same error. I also seem to be getting this error once in a while now, too: Unable to create tempOpenGL context for device context 0x31010815. It did seem to run a little bit longer (once I was able to run the app to count 2000, and a couple times to count 500+) but other times it is still crashing on the first couple counts. |
Also getting a "GLException: Error making old context current: 0x0x10001, werr: 0" now.
|
I just discovered something that seems very interesting with this problem. I had thought the problem was when moving between two different frames displaying OpenGL 3D, but it actually looks like it may be a window thing. I ran the test program that you sent over and noticed that when I hovered the mouse over the Eclipse window behind the app, the app always broke. The area of Eclipse that caused the app to break on mouse over was the isolated to the package explorer. When I hovered over a package, a tooltip came up and the app broke (with the "Unable to set pixel format..."). I began testing this with other windows(Windows Explorer, Command Prompts) and it seems very consistent that almost every time another window becomes active, the 3D app breaks, and even when a window becomes active and DOESN'T break the app, making the 3D window active again DOES break it. I'm not sure if any of this will help at all, but it seems like something worth mentioning.
Thanks, Rob |
Administrator
|
On Monday, May 02, 2011 04:54:01 pm RobC [via jogamp] wrote:
> > I just discovered something that seems very interesting with this problem. I > had thought the problem was when moving between two different frames > displaying OpenGL 3D, but it actually looks like it may be a window thing. I > ran the test program that you sent over and noticed that when I hovered the > mouse over the Eclipse window behind the app, the app always broke. The area > of Eclipse that caused the app to break on mouse over was the isolated to > the package explorer. When I hovered over a package, a tooltip came up and > the app broke (with the "Unable to set pixel format..."). I began testing > this with other windows(Windows Explorer, Command Prompts) and it seems very > consistent that almost every time another window becomes active, the 3D app > breaks, and even when a window becomes active and DOESN'T break the app, > making the 3D window active again DOES break it. I'm not sure if any of this > will help at all, but it seems like something worth mentioning. Hi Rob, hi Wade, thank you for your bug report! I just tested your test app from you bug report, and it doesn't reproduce the bug on Win7 x64 w/ java 32bit (NV gpu). Will try VBOX .. and Wade's code. However, looking at your SimpleScene code, I already can tell that you violate the AWT constraints, where you only shall modify a visible thing on the AWT EDT. http://jogamp.org/git/?p=jogl.git;a=blob;f=src/test/com/jogamp/opengl/test/junit/jogl/awt/TestAWT03GLCanvasRecreate01.java;h=2faf8fa667000b9602dac30f4061c6925eec6ced;hb=HEAD#l113 try { javax.swing.SwingUtilities.invokeAndWait(new Runnable() { public void run() { glCanvas.destroy(); frame1.dispose(); frame2.dispose(); }}); } catch (Throwable t) { t.printStackTrace(); Assume.assumeNoException(t); } The issue might be a simple AWT race condition, where the added Canvas's PFD is already set before we get a chance .. IE those errors about not able to set the GDI PFD of the onscreen surface usually means it's already set, or it is an offscreen one. Pls try the AWT EDT as described above, thx. ~Sven > > Thanks, > Rob |
Thanks, Sven, I'll give that a try and let you know.
|
In reply to this post by Sven Gothel
Sven,
I tried what you suggested above and I'm still getting the same errors. It is worth mentioning again that this is only happening on a Dell Optiplex GX260 running 32-bit Windows XP SP2 with an Intel 82845G Graphics Controller (Driver: 6.14.10.4342). I have tried it on a Dell Optiplex 740 with a new graphics controller and everything is working fine (with your fix from above and before the fix). I've also tested it on a newer HP with a new ATI card and it worked fine there, too. If the problem was with the threading issue that you mentioned, wouldn't we expect to see the same results on these other PCs? Thanks, Rob |
Administrator
|
On Thursday, May 05, 2011 05:37:33 pm RobC [via jogamp] wrote:
> > Sven, > > I tried what you suggested above and I'm still getting the same errors. It > is worth mentioning again that this is only happening on a Dell Optiplex > GX260 running 32-bit Windows XP SP2 with an Intel 82845G Graphics Controller > (Driver: 6.14.10.4342). I have tried it on a Dell Optiplex 740 with a new > graphics controller and everything is working fine (with your fix from above > and before the fix). I've also tested it on a newer HP with a new ATI card > and it worked fine there, too. > > If the problem was with the threading issue that you mentioned, wouldn't we > expect to see the same results on these other PCs? Yes. To fix this, I would need access to such a machine (OS, GPU, driver), currently we don't have the Intel GPU's in out test matrix. I was thinking about adding a new Sandy Bridge machine .. maybe the next generation. Yes, I know, Intel might be still the most distributed integrated GPU (IGP) on earth, due to office machines. If you are familiar w/ Windows, cygwin/ssh (user process w/ desktop access) and maybe VNC .. you could give me access to test. ~Sven > > Thanks, > Rob > |
Wade/Sven,
I rolled back our application to a JOGL 1.1.1a version and changed all of the GL2 method calls back to GL calls (also all of the lighting and matrix method calls) and the application is working perfectly on the GX260. I ran it with our actual application as well as the test application I sent to you. I cranked up the speed on the frame swapping from 250ms to 50ms and ran the test app into the 5000-7000 range multiple times and never saw the error. Is it possible that this could be a bug somewhere between JOGL versions? The 1.1.1a looks to be from around June of 2009. Thanks, Rob |
Administrator
|
It's very possible -- there have been other instances when bugs got introduced into JOGL 2 that didn't exist in JOGL 1. The problem is, it's very difficult to debug one of these unless Sven has access to a system that duplicates the error. Otherwise (as you've seen) we can go back and forth doing trial and error forever
I had this same kind of problem myself (a bug that only occurred on one old system of mine, that no one else could duplicate). I set up the system so Sven could ssh into it, and he easily fixed the problem in JOGL 2. |
Free forum by Nabble | Edit this page |