Search code examples
openglsshglx

Different opengl versions when sshing to remote computer


I'm having trouble running an opengl(3.3) program through ssh.

When I run:

glxinfo | grep -i opengl

on my own computer (ubuntu 12.04) I get:

OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: Quadro FX 580/PCIe/SSE2
OpenGL version string: 3.3.0 NVIDIA 304.116
OpenGL shading language version string: 3.30 NVIDIA via Cg compiler
OpenGL extensions:

when I ssh to the remote computer(ubuntu 10.04) and run the same command, I get:

OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: Quadro FX 580/PCIe/SSE2
OpenGL version string: 2.1.2 NVIDIA 304.116
OpenGL shading language version string: 1.20 NVIDIA via Cg compiler
OpenGL extensions:

For some reason I'm not getting the more up to date version of opengl(3.3) when sshing to the remote computer. Is there a workout to this problem that doesn't require admin privileges on the remote computer?


Solution

  • OpenGL over SSH means using an indirect rendering context which uses the GLX protocol to send OpenGL commands to the X server. The GLX protocol goes only up to OpenGL-2.1. There's no support for OpenGL-3 or later in GLX so far. Essentially you're SOL until someone finally gets around to specify/implement GLX3.