3.0
Assets
- VirtualGL-3.0.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 2.1.2.
Packaging Changes
- Linux/AArch64 RPM and DEB packages are now provided.
- The RPM packages now contain SHA-256 signatures. This fixes an issue whereby the RPM signatures could not be verified on Red Hat Enterprise Linux 9 when using its default crypto policy, which restricts the use of the SHA-1 algorithm.
Support
Code Quality: Stable
Current Support Category: Maintenance
Release Sponsors
This release was made possible via generous financial contributions from:
Documentation
User’s Guide for VirtualGL 3.0
Release Notes
Significant changes relative to 3.0 beta1:
-
Worked around an issue with Red Hat Enterprise Linux 8 and work-alike operating systems whereby, if X11 forwarding was enabled by default in the SSH client,
vglconnect -s
would hang while making a preliminary SSH connection to find a free port on a server running one of those operating systems. -
Fixed an issue in the EGL back end whereby
glReadPixels()
did not work with multisampled drawables. -
Fixed an issue in the EGL back end whereby the
glGet*()
functions sometimes returned an incorrect value forGL_DRAW_BUFFER0
throughGL_DRAW_BUFFER15
if the correct value wasGL_NONE
. -
The VirtualGL Faker now interposes the
glXGetCurrentDisplayEXT()
function, which is part of theGLX_EXT_import_context
extension. (TheGLX_EXT_import_context
extension can be used with the GLX back end if the underlying OpenGL library and 3D X server support the extension and if indirect OpenGL contexts are enabled usingVGL_ALLOWINDIRECT
.) -
Fixed an issue in the EGL back end whereby the
glXChooseFBConfig()
function returned no FB configs if theGLX_DRAWABLE_TYPE
attribute was set toGLX_DONT_CARE
. -
Fixed an issue in the EGL back end whereby the
glXSwapBuffers()
function erroneously swapped the buffers of double-buffered Pixmaps. -
Fixed an issue in the EGL back end that caused the bounding box in 3D Slicer to be displayed on top of the rendered volume when "Display ROI" and depth peeling were both enabled.
-
The EGL back end now supports OpenGL applications that simultaneously make the same GLX drawable current in more than one thread. As a consequence, the EGL back end now requires the
EGL_KHR_no_config_context
andEGL_KHR_surfaceless_context
extensions. -
Fixed an issue in the EGL back end whereby the OpenGL 4.5 and
GL_EXT_direct_state_access
named framebuffer functions did not work properly with the default framebuffer unless it was currently bound. -
Fixed issues in the EGL back end whereby
glGetFramebufferAttachmentParameteriv()
,glGetFramebufferParameteriv(..., GL_DOUBLEBUFFER, ...)
,glGetFramebufferParameteriv(..., GL_STEREO, ...)
, andglGetNamedFramebufferParameteriv()
did not return correct values for the default framebuffer and wherebyglGet*(GL_DOUBLEBUFFER, ...)
andglGet*(GL_STEREO, ...)
did not return correct values for framebuffer objects. -
By default, VirtualGL now generates a 2048-bit RSA key for use with SSL encryption. This fixes an error ("ee key too small") that occurred when attempting to launch the VirtualGL Client on systems configured with a default SSL/TLS security level of 2. A new CMake variable (
VGL_SSLKEYLENGTH
) can be used to restore the behavior of previous releases of VirtualGL (generating a 1024-bit RSA key) or to increase the key length for additional security. -
VirtualGL's built-in SSL encryption feature now works with OpenSSL v1.1.1 and later.