Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Linux: No 3D via ssh. "WARNING: System can't support ConditionalFeature.SCENE3D" #353

Closed
kasemir opened this issue Oct 8, 2018 · 3 comments
Labels
Gtk Gtk, Linux GUI Issues wontfix

Comments

@kasemir
Copy link
Collaborator

kasemir commented Oct 8, 2018

When I ran the new 3D Viewer on Linux inside a Virtual Box VM, it would not show anything but instead keep printing

WARNING [javafx.scene....]: System can't support ConditionalFeature.SCENE3D

The same phoebus product worked fine on the Linux host as well as on a Mac.

But when running on Centos inside a VM, it showed that warning with both Oracle JDK 10 (build from master) and OpenJDK 11 (build from the java11 branch).
Same problem when connecting via ssh from the Linux host where everything was fine into the Centos VM, so the problem doesn't seem to be the X server.

What fixed it:
Adding -Dprism.forceGPU=true.

Other suggestions found online:
-Dprism.verbose=true generates a lot of output.
-Dcom.sun.javafx.experimental.embedded.3d=true and -Dprism.glDepthSize=24 might help with 3D related problems as well, but didn't make a difference for me.

@kasemir
Copy link
Collaborator Author

kasemir commented Oct 10, 2018

More detail on the good:

  • Same behaviour for Oracle JDK 9, Oracle 10, OpenJDK 11
  • For Linux, found no difference for -Djdk.gtk.version=2 vs. -Djdk.gtk.version=3
  • No problem on Mac
  • OK when directly running on RHEL 7.5
  • Running on Centos 7.5 inside VirtualBox on RHEL 7.5 requires -Dprism.forceGPU=true
  • Running on Centos 7.5 inside VirtualBox when connected via ssh from RHEL 7.5 requires -Dprism.forceGPU=true

.. the unknown ..

  • Haven't tried Windows

.. the bad:

  • Running on a remote RHEL 7.5 connected via ssh from RHEL 7.5 results in Prism-ES2 Error and then System can't support ConditionalFeature.SCENE3D
  • Same when running on a remote RHEL 7.5 via ThinLic (remote desktop in web browser)

@kasemir
Copy link
Collaborator Author

kasemir commented Oct 10, 2018

Just found that in the 'bad' case the issue must be related to ssh. All's fine when sitting at that remote computer, but not when connected via ssh to the same remote computer.

@es-sns121
Copy link
Collaborator

Enabling iGLX may resolve this. It seems that when JavaFX can't get a hardware accelerated renderer, it defaults to its 2D pipeline to make it easier on the software renderer.

I've tried enabling iglx by editing /etc/X11/xorg.conf and enabling it, but have had no success as of yet.
I've tried running glxgears on a remote server and it fails, so I don't believe I've got iglx enabled.

@kasemir kasemir changed the title 3D Display "WARNING: System can't support ConditionalFeature.SCENE3D" Linux: No 3D via ssh. "WARNING: System can't support ConditionalFeature.SCENE3D" Oct 15, 2018
@kasemir kasemir closed this as completed Jun 20, 2019
@kasemir kasemir added the Gtk Gtk, Linux GUI Issues label Jul 22, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Gtk Gtk, Linux GUI Issues wontfix
Projects
None yet
Development

No branches or pull requests

2 participants