Skip to content

Conversation

@kiPPei123
Copy link

The custom build is not needed any more. And jogl 2.6 has some nice bug fixes.

@jzy3d
Copy link
Owner

jzy3d commented Oct 3, 2025

Thank you a lot for this contribution!

I unfortunately need to spend some time making cross platform verifications as I have encountered many issues in the past with JOGL, so your PR may remain open for a while :/

@SiboVG
Copy link

SiboVG commented Nov 15, 2025

Thank you a lot for this contribution!

I unfortunately need to spend some time making cross platform verifications as I have encountered many issues in the past with JOGL, so your PR may remain open for a while :/

Hi @jzy3d, I also experienced issues with JOGL on another project I'm working on, especially on macOS... If you need help with testing, I have an M1 MacBook and an amd64 Windows machine. I can also run arm64 Windows and Linux on Parallels Desktop on my MacBook.

Is running the unit tests/test projects enough or do you do more extensive testing?

@jzy3d
Copy link
Owner

jzy3d commented Nov 15, 2025

Thank you @SiboVG ! Were the problems you encountered fixed by JOGL 2.6.0?

I indeed run the test project on all platforms, usually macos/linux/windows on M1 & amd64. Nice if you can run Windows on arm64!

I will soon work again on Jzy3D since I am about to add an alternative OpenGL binding that could be of interest to you : https://github.com/panama-gl/panama-gl

@SiboVG
Copy link

SiboVG commented Nov 15, 2025

Thank you @SiboVG ! Were the problems you encountered fixed by JOGL 2.6.0?

I haven't seen concrete improvements with JOGL 2.6.0, but some issues were resolved in 2.5.0. The biggest issue I still face is a complete freeze on macOS (https://jogamp.org/bugzilla/show_bug.cgi?id=1478). That's scheduled to be resolved in the next JOGL release.

Nice if you can run Windows on arm64!

I'll try.

I will soon work again on Jzy3D since I am about to add an alternative OpenGL binding that could be of interest to you : https://github.com/panama-gl/panama-gl

Huh, didn't know about that, thanks! I'm now in the process of rewriting our JOGL code to LWJGL, though integration with Swing is tricky. I'll probably have to use off-screen rendering.

@SiboVG
Copy link

SiboVG commented Nov 15, 2025

Ha, well, I ran the unit tests of the master and this branch and it froze on macOS during the addRemove_AWTCanvas_FromAWTFrame test. I think this is because of the bugzilla bug I posted before.

@jzy3d
Copy link
Owner

jzy3d commented Nov 15, 2025

The test you mention is running properly on my macOS Ventura on M1 (I tried JDK 22, 17 and 11). Could you detail your setup?

Bugzilla is unavailable so I'm not sure which hang you refer to. The latest jzy3d version uses a patched JOGL version (rc4 that this PR refers to). This rc4 is available on jzy3D maven server. Would it address your issue?

PanamaGL was written by me so just ask if you need clarifications. If supports up to GL2 and runs on all windowing toolkits (SWT will come soon). I did all the offscreen rendering stuff already and it is really easy to use. Hope I can soon move the jzy3d integration here !

Also interesting for you : Jzy3D has a software implementation of OpenGL (EmulGL). It works well for simple charts/meshes. Don't know if this could be useful to your project?

@SiboVG
Copy link

SiboVG commented Nov 23, 2025

The test you mention is running properly on my macOS Ventura on M1 (I tried JDK 22, 17 and 11). Could you detail your setup?

Running Java 17:

$ java --version
openjdk 17.0.16 2025-07-15
OpenJDK Runtime Environment Temurin-17.0.16+8 (build 17.0.16+8)
OpenJDK 64-Bit Server VM Temurin-17.0.16+8 (build 17.0.16+8, mixed mode, sharing)

Note that it does not always fail on said test, sometimes it fails on others, and if I run the test only by itself, it also passes. It's a really strange bug... Bugzilla is back online, so you can see my full specs on the linked issue.

Bugzilla is unavailable so I'm not sure which hang you refer to. The latest jzy3d version uses a patched JOGL version (rc4 that this PR refers to). This rc4 is available on jzy3D maven server. Would it address your issue?

Unfortunately not. I have the same issue running the unit tests on the master branch.

PanamaGL was written by me so just ask if you need clarifications. If supports up to GL2 and runs on all windowing toolkits (SWT will come soon). I did all the offscreen rendering stuff already and it is really easy to use. Hope I can soon move the jzy3d integration here !

That sounds tempting, I will definitely check it out once, thanks! Does the rendering take a performance hit because it's written in Java?

Also interesting for you : Jzy3D has a software implementation of OpenGL (EmulGL). It works well for simple charts/meshes. Don't know if this could be useful to your project?

We also need moderately complex shaders, e.g. to render smoke and flames. I'm not sure if that's a good fit.

@jzy3d
Copy link
Owner

jzy3d commented Nov 24, 2025

Thanks. To summarize the progress on this branch :

  • 2.6.0 and 2.5.0 have resolved issues, but not the one you mention that is still open.
  • this issue prevent you from running some tests validating 2.6.0 migration on several devices
  • reading your bugzilla ticket suggests one can prevent deadlock by changing the order of initialization of the frame & panel.

To answer your points

  • Indeed, EmulGL only supports GL1 - hence no shader.
  • I had no performance issue with PanamaGL. Despite being in java, the actual work is done on the native side with OpenGL library driving the GPU hardware. Java is minaly involved for the bindings. And yes : a bit on the offscreen pixel transfert to canvas. One point though : I did not implement shaders yet.

@SiboVG
Copy link

SiboVG commented Nov 24, 2025

Thanks. To summarize the progress on this branch :

* 2.6.0 and 2.5.0 have resolved issues, but not the one you mention that is still open.

* this issue prevent you from running some tests validating 2.6.0 migration on several devices

* reading your [bugzilla ticket](https://jogamp.org/bugzilla/show_bug.cgi?id=1478) suggests one can prevent deadlock by changing the order of initialization of the frame & panel.

Sounds like a good summary.

To answer your points

* Indeed, EmulGL only supports GL1 - hence no shader.

* I had no performance issue with PanamaGL. Despite being in java, the actual work is done on the native side with OpenGL library driving the GPU hardware. Java is minaly involved for the bindings. And yes : a bit on the [offscreen pixel transfert to canvas](https://github.com/panama-gl/panama-gl/blob/main/panama-gl-api/src/main/java/panamagl/offscreen/AOffscreenRenderer.java#L212). One point though : I did not implement shaders yet.

Thank you for the clarification!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants