Skip to content

2.1.3

Compare
Choose a tag to compare
@dcommander dcommander released this 28 Jul 20:15

Assets

  • VirtualGL-2.1.3.tar.gz is the official source tarball for this release. The automatically generated "Source code" assets are not supported.
  • Refer to https://VirtualGL.org/Downloads/DigitalSignatures for information regarding the methods used to sign the files in this release and instructions for verifying the signatures.

Support

Code Quality: Stable
Current Support Category: EOL

Documentation

User’s Guide for VirtualGL 2.1.3 and TurboVNC 0.5.1

Release Notes

Significant changes relative to 2.1.2:

  1. VirtualGL 2.1.2 printed numerous "Cannot obtain a Pbuffer-enabled 24-bit FB config ..." error messages when starting Google Earth. This has been fixed, and the message has been changed to a warning and clarified. These error messages were printed whenever Google Earth called VirtualGL's interposed version of glXChooseVisual() and that function subsequently failed to obtain an appropriate visual for performing 3D rendering. However, this is not necessarily an error, because applications will sometimes call glXChooseVisual() multiple times until they find a visual with desired attributes.

  2. Changed the matching criteria in VirtualGL's interposed version of dlopen(). In previous versions of VirtualGL, any calls to dlopen("*libGL*", ...) would be replaced with a call to dlopen("librrfaker.so", ...). This caused problems with VisIt, which has a library named libGLabelPlot.so that was being interposed by mistake. The matching criteria has been changed such that dlopen() only overrides calls to dlopen("libGL\.*", ...) or dlopen("*/libGL\.*", ...).

  3. vglserver_config should now work properly with DRI-compatible graphics drivers (including ATI.)

  4. VirtualGL's interposed version of dlopen() will now modify calls to dlopen("libdl*", ...) as well as dlopen("libGL*", ...). This is to work around an interaction issue with v180.xx of the nVidia accelerated 3D drivers and WINE.

  5. Fixed an interaction issue with QT4 in which VirtualGL would not properly handle window resize events under certain circumstances.

  6. Moved dlopen() back into a separate faker library (libdlfaker.so.) libdlfaker.so is loaded by default, which should maintain the behavior of VGL 2.1.2. However, it can be disabled by passing an argument of -nodl to vglrun. The latter is necessary to make VirtualBox 2.2.x work with VirtualGL.

  7. vglserver_config should now work properly on Ubuntu 9.04 when using gdm or kdm. It should also (mostly) work on Fedora 11 (disabling XTEST does not work on Fedora 11 when using gdm.)

  8. Added fallback logic to VirtualGL's symbol loader, which will now try to directly load the GLX/OpenGL symbols from libGL.so.1 and the X11 symbols from libX11.so.6 if loading those symbols using dlsym(RTLD_NEXT, ...) fails. This is to work around an issue with version 18x.xx of the nVidia Linux Display Driver.

  9. If an application window was destroyed by the window manager, and the application did not explicitly monitor and handle the WM_DELETE protocol message, then previous versions of VirtualGL would, when using the X11 Image Transport, generally abort with an X11 BadDrawable error. This occurred because the window was basically being ripped out from underneath VirtualGL's blitter thread without warning. This version of VirtualGL has been modified such that it monitors WM_DELETE messages, so VirtualGL can now bow out gracefully if the 3D application window is closed by the window manager but the application does not handle WM_DELETE.

  10. Worked around an interaction issue with IDL whereby the application was calling XGetGeometry() with the same pointer for every argument, and this was causing VirtualGL to lose the width and height data returned from the "real" XGetGeometry() function. Subsequently, the Pbuffer corresponding to the main IDL window would become improperly sized, and the rendering area would not appear to update.

  11. Added an option (VGL_TRAPX11) that will cause VirtualGL to gracefully trap X11 errors, print a warning message when these occur, and allow the 3D application to continue running.