Posted by
Martin on
Nov 06, 2010; 11:04am
URL: https://forum.jogamp.org/Port-to-JOGL2-questions-tp1845722p1852829.html
Hi again!
I wrote a problem list. Maybe you guys have some hints again?!
------------
(1) When trying to call glu.gluProject, the output coordinate is always (0,0,0). I'm using javax.media.opengl.GLU. It returns true. Djak seems to have the same problem than me.
------------
(2) When resizing a simple chart with an overlay, I got
Exception in thread "AWT-EventQueue-0" javax.media.opengl.GLException: Method "wglGetPixelFormatAttribivARB" not available, which is weird since com.jogamp.opengl.impl.windows.wgl.WGLExt stand on my classpath in jogl.all.jar
------------
(3) I encounter JVM crash for some of jzy's demos, that have nothing really specific but a quite big number of text labels, thus many calls to glutBitmapString. The method handling text display does also call gluProject, gluUnproject, and glRasterPos3f. The crash does not occurs if I do only one screen rendering, but do occur @95% after few refresh (e.g. scaling the scene).
I can easily crash with only 500 text labels.
# Java VM: Java HotSpot(TM) Client VM (10.0-b19 mixed mode, sharing windows-x86)
# Problematic frame:
# C [nvoglnt.dll+0x2067af]
#
# An error report file with more information is saved as:
# H:\dev\helios\jzy3d.trunk\hs_err_pid5816.log
#
# If you would like to submit a bug report, please visit:
#
http://java.sun.com/webapps/bugreport/crash.jsp# The crash happened outside the Java Virtual Machine in native code.
# See problematic frame for where to report the bug.
------------
(4) When using swing -GLJPanel- I always have an exception at initialization. I can ensure my GLAutoDrawable.init() method is called one time only before the exception is thrown.
Caused by: javax.media.opengl.GLException: GLEventListener org.jzy3d.plot3d.rendering.view.Renderer3d@186d4c1 already initialized: AWT-GLJPanel[ com.jogamp.opengl.impl.GLPbufferImpl, GLAnimatorControl: null, GLEventListeners num 1 [org.jzy3d.plot3d.rendering.view.Renderer3d@186d4c1[init true], ]]
at com.jogamp.opengl.impl.GLDrawableHelper.init(GLDrawableHelper.java:127)
at javax.media.opengl.awt.GLJPanel$Updater.init(GLJPanel.java:587)
at com.jogamp.opengl.impl.GLDrawableHelper.init(GLDrawableHelper.java:113)
at com.jogamp.opengl.impl.GLDrawableHelper.init(GLDrawableHelper.java:126)
at com.jogamp.opengl.impl.GLPbufferImpl$InitAction.run(GLPbufferImpl.java:303)
at com.jogamp.opengl.impl.GLDrawableHelper.invokeGL(GLDrawableHelper.java:284)
at com.jogamp.opengl.impl.GLPbufferImpl.maybeDoSingleThreadedWorkaround(GLPbufferImpl.java:296)
at com.jogamp.opengl.impl.GLPbufferImpl.display(GLPbufferImpl.java:120)
at javax.media.opengl.awt.GLJPanel$PbufferBackend.doPaintComponentImpl(GLJPanel.java:1148)
at javax.media.opengl.awt.GLJPanel$AbstractReadbackBackend.doPaintComponent(GLJPanel.java:919)
at javax.media.opengl.awt.GLJPanel.paintComponent(GLJPanel.java:311)
at javax.swing.JComponent.paint(JComponent.java:1027)
at javax.swing.JComponent.paintToOffscreen(JComponent.java:5122)
at javax.swing.BufferStrategyPaintManager.paint(BufferStrategyPaintManager.java:285)
at javax.swing.RepaintManager.paint(RepaintManager.java:1128)
at javax.swing.JComponent._paintImmediately(JComponent.java:5070)
at javax.swing.JComponent.paintImmediately(JComponent.java:4880)
at javax.media.opengl.awt.GLJPanel$PaintImmediatelyAction.run(GLJPanel.java:673)
------------
(5) It seems that the GLEventListener.reshape(GLAutoDrawable canvas, int x, int y, int width, int height)
is locked somewhere. Indeed:
(a) I resize, but nothing change
(b) I click th canvas, and reshape() is called and the canvas refreshed
Related: when moving another window on top of the GL canvas, the GL canvas does not refresh and keeps the previous sibbling window displayed until I click in the GL canvas, which seams to be the only way to actually trigger GLEventListener.display(GLAutoDrawable)
Hope you have some ideas!
Regards,
Martin
PS: Those wishing to look at the work in progress on Jzy3d can find it here:
http://code.google.com/p/jzy3d/source/browse/#svn/trunk/