Robotics StackExchange | Archived questions

Force rviz software rendering

I'm using a Parallels with a virtual Ubuntu server installed for ROS. My idea was to use ssh with X11 forwarding to this virtual machine so that I more or less have the same functionality of Ubuntu but in my OSX environment. I have installed Parallel tools (video drivers etc.) and if I run glxinfo | grep NVIDIA I do indeed see :

OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: NVIDIA GeForce GT 650M OpenGL Engine
OpenGL version string: 1.4 (2.1 NVIDIA-10.0.43 310.41.05f01)

However OpenGL version string is set to 1.4, don't know why.. When I run rviz I get the following error:

[ INFO] [1421744895.688687978]: rviz version 1.11.4
[ INFO] [1421744895.688798006]: compiled against OGRE version 1.8.1 (Byatis)
[ INFO] [1421744896.655191351]: Stereo is NOT SUPPORTED
[ INFO] [1421744896.657271963]: OpenGl version: 1.4 (GLSL 0).
terminate called after throwing an instance of 'std::runtime_error'
  what():  Your graphics driver does not support OpenGL 2.1. Please enable software rendering before running RViz (e.g. type 'export LIBGL_ALWAYS_SOFTWARE=1').

I tried the suggestion, running it with LIBGL_ALWAYS_SOFTWARE=1, but if I do so I get the exact same error.. as if it is ignoring that environment variable. My question: how can I force rviz to use software rendering, or even better, how come hardware rendering is disabled?

Checking with ldd the libraries rviz depends on shows it depends on the mesa libGL.so. I also found a parallel tools libGL.so but replacing the mesa one with parallels did not change anything..

Asked by Hansg91 on 2015-01-20 04:12:20 UTC

Comments

If you're using Parallels, why not use coherence mode? http://download.parallels.com/desktop/v7/update2/docs/en/Parallels%20Desktop%20User%27s%20Guide/34040.htm

Asked by William on 2015-01-20 15:01:44 UTC

I'm not sure why LIBGL_ALWAYS_SOFTWARE=1 is not working, that might be an OGRE thing which changed. I've never had good experience using X11 forwarding with GL apps of any complexity (also things that use shaders).

Asked by William on 2015-01-20 15:02:47 UTC

Hey @William, I figured there would be less overhead if I used Ubuntu Server (so no coherence) and use ssh with X11 forwarding. Unfortunately though it seems that the OpenGL forwarding of this scenario is quite limited.. (opengl 1.4 only?)

Asked by Hansg91 on 2015-01-22 08:21:45 UTC

I'm not sure the overhead of running Ubuntu Desktop is enough to justify the X11 option, but that would just be my gut feeling.

Asked by William on 2015-01-22 13:09:18 UTC

Answers