Skip to content

Releases: VirtualGL/virtualgl

2.3

2.3

Choose a tag to compare

@dcommander dcommander released this 28 Jul 20:19

Assets

  • VirtualGL-2.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.
  • The binary packages were built with libjpeg-turbo 1.1.1.

Support

Code Quality: Stable
Current Support Category: EOL

Documentation

User’s Guide for VirtualGL 2.3

Release Notes

Significant changes relative to 2.3 beta1:

  1. Fixed a regression whereby GLXSpheres would ignore the first argument after -fs.

  2. glXChooseFBConfig() and glXChooseFBConfigSGIX() were erroneously returning an error when a NULL attribute list pointer was passed to them. They now behave correctly.

  3. Fixed a regression whereby VirtualGL would deadlock when using the X11 Transport with a remote X connection.

  4. Fixed a GL_INVALID_OPERATION error that would occur after a call to glXSwapBuffers(), when a context with the OpenGL Core Profile was being used.

  5. Fixed an issue whereby VirtualGL, when compiled with GCC 4.6, would abort with "terminate called after throwing an instance of 'rrerror'" whenever a 3D application running in VirtualGL exited.

  6. Added a new configuration option (VGL_DEFAULTFBCONFIG) that can be used to manually specify the rendering attributes of the default FB config that VirtualGL uses whenever a 3D application does not specify a desired set of visual attributes (which it would normally do by calling glXChooseVisual().) Refer to the User's Guide for more information.

  7. Worked around an issue whereby using very large fonts with glXUseXFont() would cause Pixmap allocation failures with certain X servers.

2.2.90 (2.3 beta1)

2.2.90 (2.3 beta1) Pre-release
Pre-release

Choose a tag to compare

@dcommander dcommander released this 28 Jul 20:18

Assets

  • VirtualGL-2.2.90.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.
  • The binary packages were built with libjpeg-turbo 1.1.1.

Packaging Changes

  • Debuginfo RPM packages are now provided. These packages install debugging symbols to facilitate using a debugger, such as GDB, with VirtualGL.

Support

Code Quality: Beta
Current Support Category: EOL

Documentation

User’s Guide for VirtualGL 2.3 (Beta)

Release Notes

Significant changes relative to 2.2.1:

  1. Re-fixed issue that caused MainWin-based applications to hang. This was initially fixed in VGL 2.1 final, but it was re-broken by the rewrite of the global VirtualGL Faker configuration routines in VGL 2.2.

  2. Overhauled the way in which VirtualGL handles Pixmap rendering, mainly to fix interaction issues with Mathematica.

  3. Added an option (VGL_ALLOWINDIRECT) that, when enabled, will cause VirtualGL to honor an application's request to create an indirect OpenGL context. Normally VirtualGL forces all contexts to be direct for performance reasons, but this causes problems with certain applications (notably Mathematica 7.)

  4. Added two new command-line options to GLXSpheres that allow the window size to be changed and the total number of frames to be specified (the application will abort after the total number of frames has been rendered.)

  5. VirtualGL will no longer die if glXGetConfig() or glXGetFBConfigAttrib() is passed a NULL argument.

  6. Fixed a BadMatch X11 error that occurred when an application attempted to apply a new OpenGL rendering context to a drawable and the FB config of the new OpenGL context differed from that of a context that was previously applied to the same drawable. This specifically was known to affect D3D applications running in WINE.

  7. CMake-based build and packaging system

  8. TCBench now takes 100 samples/second by default instead of 50.

  9. Added support for the GLX_ARB_create_context extension.

2.2.1

Choose a tag to compare

@dcommander dcommander released this 28 Jul 20:18

Assets

  • VirtualGL-2.2.1.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.
  • The binary packages were built with libjpeg-turbo 1.1.1, which fixes visual artifacts in JPEG quality levels 98 or higher, visual artifacts in grayscale JPEG compression caused by a typo in the RGB-to-luminance lookup tables, and a 1-pixel error in row 0, column 21 of the luminance plane generated by the YUV encoder (which is used in VirtualGL's YUV and XV transports.)

Support

Code Quality: Stable
Current Support Category: EOL

Documentation

User’s Guide for VirtualGL 2.2.1

Release Notes

Significant changes relative to 2.2:

  1. A 64-bit version of the VirtualGL Client for Exceed is now fully supported.

  2. Fixed a severe readback performance problem that occurred whenever an application set the render mode to GL_SELECT and called glFlush() while doing front buffer rendering.

  3. vglserver_config will now work properly whenever vglgenkey is installed in a directory other than /usr/bin or /opt/VirtualGL/bin, as long as vglgenkey is installed in the same directory as vglserver_config.

  4. vglconnect now allows the user to specify the directory in which VirtualGL binaries are installed on the server, rather than always assuming that they are installed in /opt/VirtualGL/bin.

  5. Fixed issues with vglconnect.bat that occurred when it was installed under c:\Program Files (x86) on 64-bit Windows systems and invoked with the -x or -s options.

  6. Clarified the documentation of the VGL_DISPLAY option and documented how to use VirtualGL with multiple graphics cards.

  7. VirtualGL will no longer die if glXDestroyContext() is passed a NULL argument.

  8. Fixed a BadWindow error that would occur whenever a 3D application attempted to call glXSwapIntervalSGI() (specifically, this was observed when running Direct3D applications using WINE 1.3.11 or later.) The nVidia GLX implementation requires that a window be current (not a Pbuffer) when calling glXSwapIntervalSGI(), so VirtualGL now interposes that function and makes it a no-op.

  9. Fixed an issue whereby, if a 3D application set GL_(RED|GREEN|BLUE|ALPHA)_SCALE or GL_(RED|GREEN|BLUE|ALPHA)_BIAS to non-default values, the colors would appear wrong when running the application in VirtualGL, and the readback performance would be very slow.

  10. Fixed an issue whereby 3D applications that requested an overlay visual would fail with BadRequest or other X11 errors if the 2D X server lacked GLX support (as is the case with TurboVNC.) This was caused by the fact that VirtualGL passes through glXChooseVisual() and related calls to the 2D X server if it detects that an overlay visual is being requested. Now, VirtualGL will first check that the 2D X server supports GLX before passing through those calls.

  11. vglclient -kill and vglclient -killall now work (again) with the VirtualGL Client for Exceed.

2.2

2.2

Choose a tag to compare

@dcommander dcommander released this 28 Jul 20:18

Assets

  • VirtualGL-2.2.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.
  • The binary packages were built with libjpeg-turbo 1.0.1.

Support

Code Quality: Stable
Current Support Category: EOL

Documentation

User’s Guide for VirtualGL 2.2

Release Notes

Significant changes relative to 2.2 beta1:

  1. Added an environment variable (VGL_SPOILLAST) which, when set to 0, will change the frame spoiling algorithm used for frames triggered by glFlush() calls. This is necessary to make Ansoft HFSS render properly.

  2. Added a compatibility mode to allow NetTest to communicate with older versions of itself (from VGL 2.1.x and prior.)

  3. Fixed a race condition in the VirtualGL Client that would frequently cause an "incorrect checksum for freed object" error when vglclient was shut down using CTRL-C. This problem was reported only on OS X but could have existed on other platforms as well.

2.1.90 (2.2 beta1)

2.1.90 (2.2 beta1) Pre-release
Pre-release

Choose a tag to compare

@dcommander dcommander released this 28 Jul 20:17

Assets

  • VirtualGL-2.1.90.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: Beta
Current Support Category: EOL

Release Notes

Significant changes relative to 2.1.4:

  1. Added an option (VGL_LOGO) that, when enabled, will cause VirtualGL to display a logo in the bottom right-hand corner of the 3D window. This is meant as a debugging tool to allow users to determine whether or not VirtualGL is active.

  2. Support for encrypting the VGL Transport with OpenSSL has been removed from the official VirtualGL packages. It was only a marginally useful feature, because VirtualGL also has the ability to tunnel the VGL Transport through SSH. It was necessary to maintain our own static OpenSSL libraries on Linux in order to provide a version of VirtualGL that was compatible across all Linux platforms, and this required us to keep abreast of the latest OpenSSL security fixes, etc. OpenSSL support can easily be re-added by building VirtualGL from source (see BUILDING.md.)

  3. Added a framework for creating generic image transport plugins. See server/rrtransport.h for a description of the API.

  4. Removed support for the proprietary Sun Ray plugin, since that plugin is no longer available from Sun.

  5. For Linux, Mac/Intel, Solaris/x86, and Windows systems, the default build of VirtualGL no longer uses TurboJPEG/IPP (which was based on the proprietary Intel Performance Primitives) or Sun mediaLib. Instead, VirtualGL now uses libjpeg-turbo, a fully open source SIMD-accelerated JPEG codec developed in conjunction with the TigerVNC Project (and based on libjpeg/SIMD.)

    As a result of this, it is no longer necessary to install a separate TurboJPEG package on Linux systems.

  6. Added a universal 32/64-bit VirtualGL Client binary for OS X. The 32-bit fork works on 10.4 "Tiger" or later, and the 64-bit fork works on 10.5 "Leopard" or later.

  7. Added support for encoding rendered frames as I420 YUV and displaying them through X Video. The frames can either be displayed directly to the 2D X server or sent through the VGL Transport for display using the VirtualGL Client. See the User's Guide for more details.

  8. Renamed /etc/modprobe.d/virtualgl to /etc/modprobe.d/virtualgl.conf to comply with the Ubuntu standard.

  9. Added an environment variable (VGL_SAMPLES) and command-line switch (vglrun -ms) to force VirtualGL to select a multisampled visual or override the level of multisampling selected by the 3D application.

  10. The uninstall script in the Mac binary package should now work on OS X 10.6.

  11. VirtualGL can now use pixel buffer objects (PBOs) to accelerate the readback of rendered frames. This particularly helps when multiple users are sharing the GPU. See the "Advanced Configuration" section of the User's Guide for more information.

  12. On Linux systems, this version of VirtualGL works around the interaction issues between libdlfaker.so and VirtualBox, thus eliminating the need to specify CR_SYSTEM_GL_PATH or to run the VirtualBox application using vglrun -nodl.

  13. This version of VirtualGL provides a binary package, documentation, and full support for Cygwin/X.

  14. Fixed an error ("free(): invalid pointer") that occurred whenever an application called XCloseDisplay() and the VGL_XVENDOR environment variable was set.

  15. VirtualGL should now work properly when used with applications that render to framebuffer objects (FBOs.)

  16. vglconnect.bat should now work properly on 64-bit Windows systems. Previously, it would fail if it was installed under the Program Files (x86) directory.

  17. Added a -gid option to vglserver_config to allow the group ID of the vglusers group to be specified, if that group must be created.

  18. TCBench should now work properly on OS X.

2.1.4

Choose a tag to compare

@dcommander dcommander released this 28 Jul 20:17

Assets

  • VirtualGL-2.1.4.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.4

Release Notes

Significant changes relative to 2.1.3:

  1. Fixed a regression in vglserver_config that caused a "binary operator expected" error when restricting framebuffer device access to the vglusers group.

  2. Fixed an issue in vglserver_config whereby the device permissions were not being set correctly on SuSE Linux Enterprise Desktop 11.

  3. VGL should now properly ignore GLX_BUFFER_SIZE if an application attempts to specify it when requesting a true color visual. Specifically, this allows the Second Life SnowGlobe client to run properly in VGL and WINE.

  4. vglserver_config should now work even if /sbin and /usr/sbin are not in the PATH.

  5. The Solaris 10/x86 version of VirtualGL should now work properly with the nVidia 18x.xx series drivers.

  6. Fixed a memory leak that occurred when running VirtualGL in quad-buffered stereo mode.

  7. The DRI device permissions in RHEL 5 were being overridden whenever a user logged in, because RHEL 5 uses a file in /etc/security/console.perms.d to specify the default DRI permissions rather than using /etc/security/console.perms. vglserver_config has been modified to handle this.

  8. Added an option to vglconnect on Linux/Unix to allow it to use gsissh from the Globus Toolkit instead of the regular ssh program.

2.1.3

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.

2.1.2

Choose a tag to compare

@dcommander dcommander released this 28 Jul 20:15

Assets

  • VirtualGL-2.1.2.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.2 and TurboVNC 0.5.1

Release Notes

Significant changes relative to 2.1.1:

  1. Fixed a buffer overrun in TurboJPEG/mediaLib that may have caused problems on Solaris/x86 VirtualGL servers.

  2. Integrated libdlfaker.so into librrfaker.so to eliminate the need for invoking vglrun -dl.

  3. Developed a proper uninstaller app for the Mac OS X VirtualGL package.

  4. Modified MAXINST variable in the SUNWvgl Solaris package, to prevent multiple instances of this package from being installed simultaneously.

2.1.1

Choose a tag to compare

@dcommander dcommander released this 28 Jul 20:13

Assets

  • VirtualGL-2.1.1.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.1 and TurboVNC 0.5

Release Notes

This release was historically part of the Sun Shared Visualization v1.1.1 product.

Significant changes relative to 2.1:

  1. Fixed issues that occurred when displaying to the second or subsequent screens on a multi-screen X server.

  2. Updated to the wxWindows Library License v3.1.

  3. Added an uncompressed YUV encoding option to the Sun Ray plugin. This provides significantly better performance than DPCM on Sun Ray 1 clients, and it provides significantly better image quality in all cases. YUV encoding will generally use about 50% more network bandwidth than DPCM, all else being equal.

  4. Further optimized the Huffman encoder in the mediaLib implementation of TurboJPEG. This should decrease the CPU usage when running VirtualGL on Solaris VirtualGL servers, particularly Solaris/x86 servers running 32-bit applications.

  5. vglconnect now works properly with Cygwin.

  6. Fixed a regression that caused VirtualGL to remove any part of the VGL_XVENDOR string following the first whitespace.

  7. vglserver_config now works properly with OpenSolaris systems.

  8. glXUseXFont() now works if a Pixmap is the current drawable.

  9. vglserver_config now works properly with Debian Linux systems.

  10. Fixed a typo in vglconnect that caused it to leave temporary files lying about.

  11. Removed the libXm (Motif) dependency in the Solaris/x86 version of VirtualGL. This mainly affected OpenSolaris systems, on which Motif is not available. The libXm dependency was introduced in VirtualGL 2.0.x, because that version of VirtualGL used libXt (X Intrinsics) to generate its popup configuration dialog. Java requires that libXm be loaded ahead of libXt, so it was necessary to explicitly link the VirtualGL Faker with libXm to guarantee that the libraries were loaded in the correct order. Since VirtualGL 2.1.x and later no longer use libXt, the binding to libXm could be safely removed on x86 systems. Note, however, that the libXm binding still has to be included on SPARC systems, because libGL on SPARC depends on libXmu, which depends on libXt.

  12. Fixed an issue with GeomView whereby attempting to resize the oldest window in a multi-window view would cause the VirtualGL Client for Exceed to crash.

  13. When used to configure a Solaris server for GLX mode with open access (all users being able to access the 3D X server, not just members of the vglusers group), vglserver_config was incorrectly placing xhost commands at the top of /etc/dt/config/Xsetup instead of at the bottom. This could have led to problems, since xhost is not guaranteed to be in the PATH until the bottom of that script.

  14. VirtualGL should now build and run cleanly on Ubuntu systems (and possibly other Debian derivatives, although only Ubuntu has been tested.)

  15. Certain applications call glFlush() thousands of times in rapid succession when rendering to the front buffer, even if no part of the 3D scene has changed. Without going into the gorey details, this caused the VirtualGL pipeline to become overloaded in certain cases, particularly on systems with fast pixel readback. On such systems, every one of the glFlush() commands resulted in VirtualGL transporting a rendered frame, even if the frame was identical to the previous frame. This resulted in application delays of up to several minutes. This version of VGL includes a mechanism that ensures that no more than 100 glFlush() commands per second will actually result in a rendered frame being transported, and thus strings of rapid-fire glFlush() commands can no longer overload the pipeline.

  16. vglserver_config should now work with openSUSE systems.

  17. It was discovered that xhost +LOCAL: is a better method of enabling 3D X server access to all users of the VirtualGL server. This method works even if TCP connections are disabled in the X server (which is the case on recent Solaris and Linux distributions.) vglserver_config has thus been modified to use this method rather than xhost +localhost. Also, since it is no longer necessary to set DisallowTCP=false in the GDM configuration file, vglserver_config now comments out this line if it exists.

  18. Fixed a deadlock that occurred when using the VirtualGL Sun Ray plugin and ParaView to render multi-context datasets.

  19. Fixed an issue with Mac X11 2.1.x on OS X 10.5 "Leopard" whereby vglconnect would abort with Could not open log file. X11 2.1.x uses a DISPLAY environment of the form /tmp/launch-*/:0, so it was necessary to remove everything up to the last slash before using this variable to build a unique log file path for the VirtualGL Client.

  20. Included libgefaker.so in the Solaris VirtualGL packages (oops.)

  21. Added an interposed version of XSolarisGetVisualGamma() on SPARC servers, so applications that require gamma-corrected visuals can be fooled into thinking that a gamma-corrected visual is available, when in fact VirtualGL's software gamma correction mechanism is being used instead.

  22. Fixed a bug in the color conversion routines of TurboJPEG/mediaLib that caused the Solaris VirtualGL Client to display incorrect pixels along the right-most edge of the window when 2X or 4X subsampling was used.

2.1

2.1

Choose a tag to compare

@dcommander dcommander released this 28 Jul 20:13

Assets

  • VirtualGL-2.1.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 and TurboVNC 0.4

Release Notes

This release was historically part of the Sun Shared Visualization v1.1 product.

Significant changes relative to 2.1 beta1:

  1. Windows applications now link statically with OpenSSL, to avoid a dependency on msvcr71.dll that was introduced in the Win32 OpenSSL 0.9.8e DLLs. libeay32.dll and ssleay32.dll have been removed from the Windows package, since they are no longer needed.

  2. Implemented a new interposer library (libgefaker.so) which, when active, will interpose on getenv() and return NULL whenever an application queries the value of the LD_PRELOAD environment variable (and, on Solaris, the LD_PRELOAD_32 and LD_PRELOAD_64 environment variables.) This fools an application into thinking that no preloading is occurring. This feature is currently undocumented and is subject to change, but it can be activated in this release by passing an argument of -ge to vglrun.

  3. Extended VGL_SYNC functionality to include glXSwapBuffers() as well. This works around a couple of interaction issues between VirtualGL and AutoForm. The User's Guide has been updated to explain this new functionality, to include an application recipe for AutoForm, and to include a warning about the performance consequences of using VGL_SYNC on a remote X connection.

  4. Included a short paragraph in the Chromium section of the User's Guide that explains how to use VirtualGL on the render nodes to redirect 3D rendering from a window to a Pbuffer.

  5. Documented the patch revision necessary to make Exceed 2008 work properly with VirtualGL. Removed dire warnings.

  6. Added full-screen rendering mode to GLXSpheres.

  7. Fixed a regression (uninitialized variable) introduced by 2.1 beta1[7].

  8. Fixed a logic error that caused the VirtualGL Client to fail when using OpenGL drawing and talking to a legacy (VGL 2.0 or earlier) VirtualGL faker.

  9. Fixed a regression that would cause VGL to deadlock when the user closed the 3D application window while using the X11 Image Transport.

  10. Fixed an issue whereby vglserver_config would fail to detect the presence of GLP because nm was not in the default PATH.

  11. When running VirtualGL on Enterprise Linux 5 using the 100 series nVidia drivers, a normal exit from a 3D application will result in glXChannelRectSyncSGIX() being called after the VirtualGL hashes have already been destructed. glXChannelRectSyncSGIX() calls XFree() (an interposed function), and under certain circumstances, the interposed version of XFree() was trying (and failing) to access one of the previously destructed VirtualGL hashes. This has been fixed.

  12. vglclient -kill now works properly on Solaris systems.

  13. Fixed a timing snafu in-- and raised the run priority of-- the Windows version of TCBench. This improves the accuracy of TCBench on Windows in high-client-CPU-usage scenarios.

  14. Fixed an issue in the interactive mode of GLXSpheres whereby it would use 100% of the CPU when sitting idle. Added an option to GLXSpheres to adjust the polygon count of the scene.

  15. Added application recipes for ANSYS and Cedega to the User's Guide. Added notes describing the ANSYS and Pro/E duplicate glFlush() issue and workarounds.

  16. Changed the default value for VGL_NPROCS to 1 (the performance study indicates that there is no longer any measurable advantage to multithreaded compression on modern hardware with VGL 2.1.)

  17. Added a -bench option to nettest to allow it to measure actual usage on a given Solaris or Linux network device. This was necessitated by accuracy issues with other open source network monitoring solutions.

  18. Changed the way global hash tables are allocated in VGL, in order to fix an interaction issue with applications that are built with MainWin.

  19. vglclient -kill now works properly on Mac systems.

  20. The VirtualGL Configuration dialog now pops up properly when Caps Lock is active.

  21. If a previously destroyed GLX context is passed as an argument to glXMake[Context]Current(), the function now returns False instead of throwing a fatal exception. This was necessary to make a couple of different commercial applications work properly.

  22. There was some inconsistency regarding the interface for enabling lossless compression in the Sun Ray Image Transport. The User's Guide listed the interface as VGL_COMPRESS=srrgb, whereas the output of vglrun listed the interface as -c srlossless. VirtualGL 2.1rc only responded to the latter. This version of VirtualGL now responds to both interfaces, but VGL_COMPRESS=srrgb is the correct and documented interface. Any errant references to "srlossless" have been changed.