I just had some experience with this not long ago...
I'm using a windows 10 to SSH a headless Ubuntu service, and need to run the RVIZ on the server to show some data.
At very beginning, I tried with putty with vcXsrv (I didn't try Xming because I couldn't get a latest release), using X Forwarding, and RVIZ directly aborted after launched it, because "OpenGL that rviz is relying on cannot be X Forwarded", see this...
I didn't try any VNC client and I think if they cannot solve this "OpenGL over TCP" issue then it won't help at all. However I noticed some VNC has the capability of processing 3D object, and they are using a "VirtualGL" to achieve it. Then I searched a bit on it, and noticed that this VGL is exactly designed for this case, and I don't need to install any other client to use it because the native program is already good enough for normal use case and even provides better performance (see this VGL Transport).
Basically, in windows part, you need to install a Cygwin for installing this VirtualGL client, and Cyginw/X for X server, and then in the Ubuntu part you need to install a VirtualGL server. After that you can use the vglconnect (relying on SSH) in the Cygwin to connect to server, and then use vglrun (at server side) to launch RVIZ.
Since the OpenGL rendering is done in the server side, it doesn't require much compute resource from client side, but I think it does need some bandwidth. In my test, 1Gb Ethernet is good enough for my daily work.
To clarify, most modern Linux systems run an X-windows server. I think your question is specifically about X-forwarding over SSH?
Yes. ssh or any other technique that would allow me to run Rviz et all on the Linux side and run Xwindows on the client side. In my case I've got all of Ros installed in a Digital Ocean droplet. I ssh -X or -Y to it from my Mac, and I launch Gazebo.
enter code here
I see the splash screen of RViz fIf you are using a droplet, I assume that means VNC is not an option?
Can you be more specific about how it crashes? Does it provide any error info, it just it just vanish?
@Geoff VNC is an option ... but AFAICT I can't paste into a shell running overVNC which is problem when entering long ROS commands. I am about as far along in getting the VNC scenario to work. I am hoping to determine for sure whether they both can be made to work, and if so, which is faster.
Not being able to paste into a shell sounds like a problem of your VNC client not interacting with the system clipboard.
FWIW, I use X-forwarding with RViz and Gazebo all of the time, though both the client and server are Linux boxes. So it definitely is possible, but I don't know how to configure macOS to do it.
@clalancette Would you be willing to share your shell script or ssh command or other configuration is, I think that would be very helpful!