VirtualGL

Many applications use OpenGL for graphics rendering. VirtualGL is an application that uses the Linux system’s graphics hardware to render OpenGL graphics and then pass it to the remote X server. This method bypasses the GLX extension.

Installing VirtualGL

VirtualGL is available on most modern Linux distributions from their standard repositories.

Debian/Ubuntu users
sudo apt-get install virtualgl

RHEL/Centos Users
yum install virtualgl

Precompiled versions  of the latest version are available for most distros at the VirtualGL website

Setting up the FastX server

  1. Install the FastX Server
  2. Log in as an administrator
  3. Go to the system menu > Profiles > Default Profile > Enable X11 TCP Connections
  4. Save
  5. Launch a FastX Session

When executing a command, run:

 vglrun -c proxy -- opengl_application app_options app_arguments

For more information and options see the VirtualGL Documentation

Using a 3D proxy with VirtualGL and FastX

FastX can work as a proxy to connect and take care of 2D drawing while a separate server does the 3D rendering using VirtualGL (See VirtualGL section 9.2)

This is accomplished with the -d <display> command of vglrun

Setting up the VirtualGL server

VirtualGL requires access to an X Display for rendering.  Typically  DISPLAY :0 (the physical display) does not listen on TCP connections.  In this example we are using GDM as the Display Manager

  1. Log in as root
  2. Edit /etc/gdm/custom.conf
  3. In the [security] section, disable DisallowTCP
    [security]
    DisallowTCP=false
  4. Edit /etc/X0.hosts
  5. Add the hosts you will grant access to
    a single line + grants access to all
    See man xhost for more information
  6. Restart GDM  service gdm restart

Display :0 will now listen for TCP connections and be able to render remote VirtualGL traffic

Connecting using FastX

From the FastX Session, run

vglrun -d your.virtualglserver.com:0 --  opengl_application app_options app_arguments

For more information and options see the VirtualGL Documentation