Describe the bug
Endless OpenGL exceptions in log. Application is no more repaints
To Reproduce
Project opened in IDE
Run RO3.java file
Then I close all tabs except OpenGL
Then I load sp-linear2.ro sample file
Now open Log tab.
Now drag either OpenGL or Log tab caption to split tabs
Endless exceptions displays in IDE:
java.lang.reflect.InvocationTargetException
at java.desktop/java.awt.EventQueue.invokeAndWait(EventQueue.java:1371)
at java.desktop/java.awt.EventQueue.invokeAndWait(EventQueue.java:1346)
at java.desktop/javax.swing.SwingUtilities.invokeAndWait(SwingUtilities.java:1480)
at jogl.all@2.6.0/com.jogamp.opengl.util.AWTAnimatorImpl.display(AWTAnimatorImpl.java:98)
at jogl.all@2.6.0/com.jogamp.opengl.util.AnimatorBase.display(AnimatorBase.java:471)
at jogl.all@2.6.0/com.jogamp.opengl.util.FPSAnimator$MainTask.run(FPSAnimator.java:245)
at java.base/java.util.TimerThread.mainLoop(Timer.java:571)
at java.base/java.util.TimerThread.run(Timer.java:521)
Caused by: com.jogamp.opengl.GLException: Caught IllegalStateException: GL error 1282: invalid operation on thread AWT-EventQueue-0
at jogl.all@2.6.0/com.jogamp.opengl.GLException.newGLException(GLException.java:76)
at jogl.all@2.6.0/jogamp.opengl.GLDrawableHelper.invokeGLImpl(GLDrawableHelper.java:1327)
at jogl.all@2.6.0/jogamp.opengl.GLDrawableHelper.invokeGL(GLDrawableHelper.java:1147)
at jogl.all@2.6.0/com.jogamp.opengl.awt.GLJPanel$OffscreenBackend.doPaintComponent(GLJPanel.java:2139)
at jogl.all@2.6.0/com.jogamp.opengl.awt.GLJPanel.paintComponent(GLJPanel.java:588)
at java.desktop/javax.swing.JComponent.paint(JComponent.java:1128)
at java.desktop/javax.swing.JComponent.paintChildren(JComponent.java:961)
at java.desktop/javax.swing.JComponent.paint(JComponent.java:1137)
at java.desktop/javax.swing.JComponent.paintChildren(JComponent.java:961)
at java.desktop/javax.swing.JComponent.paint(JComponent.java:1137)
at java.desktop/javax.swing.JComponent.paintChildren(JComponent.java:961)
at java.desktop/javax.swing.JComponent.paint(JComponent.java:1137)
at java.desktop/javax.swing.JComponent.paintChildren(JComponent.java:961)
at java.desktop/javax.swing.JComponent.paint(JComponent.java:1137)
at java.desktop/javax.swing.JComponent.paintChildren(JComponent.java:961)
at java.desktop/javax.swing.JComponent.paint(JComponent.java:1137)
at java.desktop/javax.swing.JComponent.paintChildren(JComponent.java:961)
at java.desktop/javax.swing.JSplitPane.paintChildren(JSplitPane.java:1034)
at java.desktop/javax.swing.JComponent.paint(JComponent.java:1137)
at java.desktop/javax.swing.JComponent.paintChildren(JComponent.java:961)
at java.desktop/javax.swing.JComponent.paint(JComponent.java:1137)
at java.desktop/javax.swing.JComponent.paintChildren(JComponent.java:961)
at java.desktop/javax.swing.JComponent.paint(JComponent.java:1137)
at java.desktop/javax.swing.JComponent.paintChildren(JComponent.java:961)
at java.desktop/javax.swing.JComponent.paint(JComponent.java:1137)
at java.desktop/javax.swing.JComponent.paintChildren(JComponent.java:961)
at java.desktop/javax.swing.JComponent.paint(JComponent.java:1137)
at java.desktop/javax.swing.JLayeredPane.paint(JLayeredPane.java:586)
at java.desktop/javax.swing.JComponent.paintChildren(JComponent.java:961)
at java.desktop/javax.swing.JComponent.paint(JComponent.java:1137)
at java.desktop/javax.swing.JComponent.paintToOffscreen(JComponent.java:5318)
at java.desktop/javax.swing.RepaintManager$PaintManager.paintDoubleBufferedImpl(RepaintManager.java:1656)
at java.desktop/javax.swing.RepaintManager$PaintManager.paintDoubleBuffered(RepaintManager.java:1631)
at java.desktop/javax.swing.RepaintManager$PaintManager.paint(RepaintManager.java:1569)
at java.desktop/javax.swing.RepaintManager.paint(RepaintManager.java:1336)
at java.desktop/javax.swing.JComponent._paintImmediately(JComponent.java:5266)
at java.desktop/javax.swing.JComponent.paintImmediately(JComponent.java:5076)
at java.desktop/javax.swing.RepaintManager$4.run(RepaintManager.java:878)
at java.desktop/javax.swing.RepaintManager$4.run(RepaintManager.java:861)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:400)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:87)
at java.desktop/javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:861)
at java.desktop/javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:834)
at jogl.all@2.6.0/com.jogamp.opengl.util.AWTAnimatorImpl$1.run(AWTAnimatorImpl.java:170)
at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:308)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:773)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:720)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:714)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:400)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:87)
at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:742)
at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
Caused by: java.lang.IllegalStateException: GL error 1282: invalid operation
at com.marginallyclever.ro3/com.marginallyclever.convenience.helpers.OpenGLHelper.checkGLError(OpenGLHelper.java:28)
at com.marginallyclever.ro3/com.marginallyclever.ro3.mesh.Mesh.render(Mesh.java:288)
at com.marginallyclever.ro3/com.marginallyclever.ro3.mesh.Mesh.render(Mesh.java:267)
at com.marginallyclever.ro3/com.marginallyclever.ro3.apps.viewport.renderpass.DrawMeshes.updateShadowMap(DrawMeshes.java:223)
at com.marginallyclever.ro3/com.marginallyclever.ro3.apps.viewport.renderpass.DrawMeshes.draw(DrawMeshes.java:267)
at com.marginallyclever.ro3/com.marginallyclever.ro3.apps.viewport.Viewport.renderAllPasses(Viewport.java:430)
at com.marginallyclever.ro3/com.marginallyclever.ro3.apps.viewport.OpenGL3Panel.display(OpenGL3Panel.java:278)
at jogl.all@2.6.0/jogamp.opengl.GLDrawableHelper.displayImpl(GLDrawableHelper.java:692)
at jogl.all@2.6.0/jogamp.opengl.GLDrawableHelper.display(GLDrawableHelper.java:674)
at jogl.all@2.6.0/com.jogamp.opengl.awt.GLJPanel$Updater.display(GLJPanel.java:1490)
at jogl.all@2.6.0/com.jogamp.opengl.awt.GLJPanel$9.run(GLJPanel.java:1565)
at jogl.all@2.6.0/jogamp.opengl.GLDrawableHelper.invokeGLImpl(GLDrawableHelper.java:1293)
... 55 more
Expected behavior
A clear and concise description of what you expected to happen.
Screenshots
If applicable, add screenshots to help explain your problem.
Platform (please complete the following information):
- Windows 10 on AMD 9900X
- App Version: Application build from master branch
- Java version: Azul java 22.0.2
- Video card Nvidia 5070 TI with driver 610.88
Additional context
Add any other context about the problem here.
Describe the bug
Endless OpenGL exceptions in log. Application is no more repaints
To Reproduce
Project opened in IDE
Run RO3.java file
Then I close all tabs except OpenGL
Then I load sp-linear2.ro sample file
Now open Log tab.
Now drag either OpenGL or Log tab caption to split tabs
Endless exceptions displays in IDE:
java.lang.reflect.InvocationTargetException
at java.desktop/java.awt.EventQueue.invokeAndWait(EventQueue.java:1371)
at java.desktop/java.awt.EventQueue.invokeAndWait(EventQueue.java:1346)
at java.desktop/javax.swing.SwingUtilities.invokeAndWait(SwingUtilities.java:1480)
at jogl.all@2.6.0/com.jogamp.opengl.util.AWTAnimatorImpl.display(AWTAnimatorImpl.java:98)
at jogl.all@2.6.0/com.jogamp.opengl.util.AnimatorBase.display(AnimatorBase.java:471)
at jogl.all@2.6.0/com.jogamp.opengl.util.FPSAnimator$MainTask.run(FPSAnimator.java:245)
at java.base/java.util.TimerThread.mainLoop(Timer.java:571)
at java.base/java.util.TimerThread.run(Timer.java:521)
Caused by: com.jogamp.opengl.GLException: Caught IllegalStateException: GL error 1282: invalid operation on thread AWT-EventQueue-0
at jogl.all@2.6.0/com.jogamp.opengl.GLException.newGLException(GLException.java:76)
at jogl.all@2.6.0/jogamp.opengl.GLDrawableHelper.invokeGLImpl(GLDrawableHelper.java:1327)
at jogl.all@2.6.0/jogamp.opengl.GLDrawableHelper.invokeGL(GLDrawableHelper.java:1147)
at jogl.all@2.6.0/com.jogamp.opengl.awt.GLJPanel$OffscreenBackend.doPaintComponent(GLJPanel.java:2139)
at jogl.all@2.6.0/com.jogamp.opengl.awt.GLJPanel.paintComponent(GLJPanel.java:588)
at java.desktop/javax.swing.JComponent.paint(JComponent.java:1128)
at java.desktop/javax.swing.JComponent.paintChildren(JComponent.java:961)
at java.desktop/javax.swing.JComponent.paint(JComponent.java:1137)
at java.desktop/javax.swing.JComponent.paintChildren(JComponent.java:961)
at java.desktop/javax.swing.JComponent.paint(JComponent.java:1137)
at java.desktop/javax.swing.JComponent.paintChildren(JComponent.java:961)
at java.desktop/javax.swing.JComponent.paint(JComponent.java:1137)
at java.desktop/javax.swing.JComponent.paintChildren(JComponent.java:961)
at java.desktop/javax.swing.JComponent.paint(JComponent.java:1137)
at java.desktop/javax.swing.JComponent.paintChildren(JComponent.java:961)
at java.desktop/javax.swing.JComponent.paint(JComponent.java:1137)
at java.desktop/javax.swing.JComponent.paintChildren(JComponent.java:961)
at java.desktop/javax.swing.JSplitPane.paintChildren(JSplitPane.java:1034)
at java.desktop/javax.swing.JComponent.paint(JComponent.java:1137)
at java.desktop/javax.swing.JComponent.paintChildren(JComponent.java:961)
at java.desktop/javax.swing.JComponent.paint(JComponent.java:1137)
at java.desktop/javax.swing.JComponent.paintChildren(JComponent.java:961)
at java.desktop/javax.swing.JComponent.paint(JComponent.java:1137)
at java.desktop/javax.swing.JComponent.paintChildren(JComponent.java:961)
at java.desktop/javax.swing.JComponent.paint(JComponent.java:1137)
at java.desktop/javax.swing.JComponent.paintChildren(JComponent.java:961)
at java.desktop/javax.swing.JComponent.paint(JComponent.java:1137)
at java.desktop/javax.swing.JLayeredPane.paint(JLayeredPane.java:586)
at java.desktop/javax.swing.JComponent.paintChildren(JComponent.java:961)
at java.desktop/javax.swing.JComponent.paint(JComponent.java:1137)
at java.desktop/javax.swing.JComponent.paintToOffscreen(JComponent.java:5318)
at java.desktop/javax.swing.RepaintManager$PaintManager.paintDoubleBufferedImpl(RepaintManager.java:1656)
at java.desktop/javax.swing.RepaintManager$PaintManager.paintDoubleBuffered(RepaintManager.java:1631)
at java.desktop/javax.swing.RepaintManager$PaintManager.paint(RepaintManager.java:1569)
at java.desktop/javax.swing.RepaintManager.paint(RepaintManager.java:1336)
at java.desktop/javax.swing.JComponent._paintImmediately(JComponent.java:5266)
at java.desktop/javax.swing.JComponent.paintImmediately(JComponent.java:5076)
at java.desktop/javax.swing.RepaintManager$4.run(RepaintManager.java:878)
at java.desktop/javax.swing.RepaintManager$4.run(RepaintManager.java:861)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:400)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:87)
at java.desktop/javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:861)
at java.desktop/javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:834)
at jogl.all@2.6.0/com.jogamp.opengl.util.AWTAnimatorImpl$1.run(AWTAnimatorImpl.java:170)
at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:308)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:773)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:720)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:714)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:400)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:87)
at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:742)
at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
Caused by: java.lang.IllegalStateException: GL error 1282: invalid operation
at com.marginallyclever.ro3/com.marginallyclever.convenience.helpers.OpenGLHelper.checkGLError(OpenGLHelper.java:28)
at com.marginallyclever.ro3/com.marginallyclever.ro3.mesh.Mesh.render(Mesh.java:288)
at com.marginallyclever.ro3/com.marginallyclever.ro3.mesh.Mesh.render(Mesh.java:267)
at com.marginallyclever.ro3/com.marginallyclever.ro3.apps.viewport.renderpass.DrawMeshes.updateShadowMap(DrawMeshes.java:223)
at com.marginallyclever.ro3/com.marginallyclever.ro3.apps.viewport.renderpass.DrawMeshes.draw(DrawMeshes.java:267)
at com.marginallyclever.ro3/com.marginallyclever.ro3.apps.viewport.Viewport.renderAllPasses(Viewport.java:430)
at com.marginallyclever.ro3/com.marginallyclever.ro3.apps.viewport.OpenGL3Panel.display(OpenGL3Panel.java:278)
at jogl.all@2.6.0/jogamp.opengl.GLDrawableHelper.displayImpl(GLDrawableHelper.java:692)
at jogl.all@2.6.0/jogamp.opengl.GLDrawableHelper.display(GLDrawableHelper.java:674)
at jogl.all@2.6.0/com.jogamp.opengl.awt.GLJPanel$Updater.display(GLJPanel.java:1490)
at jogl.all@2.6.0/com.jogamp.opengl.awt.GLJPanel$9.run(GLJPanel.java:1565)
at jogl.all@2.6.0/jogamp.opengl.GLDrawableHelper.invokeGLImpl(GLDrawableHelper.java:1293)
... 55 more
Expected behavior
A clear and concise description of what you expected to happen.
Screenshots
If applicable, add screenshots to help explain your problem.
Platform (please complete the following information):
Additional context
Add any other context about the problem here.