This is mainly just a bug fix release, but I also did an extensive 
overhaul of the code, making vast improvements to readability and 
maintainability, using more modern and consistent variable and class 
naming conventions, adding automated tests, etc.  Thus, I felt it 
prudent to put the code through a beta cycle.

Mac and Linux packages are here:
https://sourceforge.net/projects/virtualgl/files/2.3.90%20%282.4beta1%29/

Follow these instructions for Cygwin:
http://www.virtualgl.org/Documentation/Cygwin


Significant changes since 2.3.3:

[1] The VirtualGL Client for Exceed has been retired.  It will continue 
to be maintained in the 2.3.x branch on a break/fix basis only. 
Cygwin/X has matured to the point that it now provides an adequate 
solution for using the VirtualGL Client on Windows, with the only major 
limitation being lack of quad-buffered stereo support.  That feature 
alone is insufficient to justify a code base that is basically twice as 
complex as it otherwise would be.  Further, we are now maintaining our 
own Cygwin repository for the VirtualGL Client, which makes it easier to 
install on that platform.

The VirtualGL Client for Exceed reflects VirtualGL's origins as an 
add-on technology for existing remote X environments.  These days, most 
people use VirtualGL with some sort of X proxy instead.  There have been 
no significant changes to vglclient since version 2.2.1, as most of the 
efforts of The VirtualGL Project in recent years have focused on the 
server-side components and TurboVNC.  In the early days of the project, 
there were performance advantages to the VGL Transport, but that is no 
longer the case.  In fact, TurboVNC will generally do a better and 
faster job of compressing the image stream, since it uses a hybrid 
compression scheme rather than pure JPEG.  The native Windows version of 
TCBench, which previously shipped with the VirtualGL Client for Exceed, 
has been moved into the Windows TurboVNC Viewer package.

[2] The VirtualGL source code has been extensively refactored to use 
more modern variable, class, and method naming conventions, and 
automated test scripts for the utility libraries and the faker have been 
added.

[3] glXChooseFBConfig() now properly handles the GLX_FBCONFIG_ID 
attribute.  The improper handling of this attribute was known to cause 
an error ("Could not find GLX 1.3 config from peer info") when running 
the LWJGL (Lightweight Java Game Library) on AMD GPUs, but it may have 
affected other apps as well.

[4] The performance of PBO readback on ATI FirePro adapters has been 
improved dramatically (close to an order of magnitude.)

[5] vglserver_config will now set DRI device permissions properly on 
systems that lack an xorg.conf file but have an xorg.conf.d directory.

[6] vglserver_config should now work with recent Debian releases.

[7] Fixed an issue whereby VirtualGL would not always resize the Pbuffer 
corresponding to an Xt or Motif OpenGL widget whenever the widget was 
resized.

[8] The Mac packaging system now uses pkgbuild and productbuild rather 
than PackageMaker (which is obsolete and no longer supported.)  This 
means that OS X 10.6 "Snow Leopard" or later must be used when packaging 
VirtualGL, although the packages produced can be installed on OS X 10.5 
"Leopard" or later.  OS X 10.4 "Tiger" is no longer supported.

[9] The "Uninstall VirtualGL" app should once again work on OS X 10.5.

[10] Fixed an infinite drawing loop that occurred when running Altair 
HyperBeam with VirtualGL.  Since 2.1.3, VirtualGL has been setting the 
WM_DELETE_WINDOW property on any OpenGL window so that it (VGL) can be 
notified if the window manager deletes the window (thus preventing VGL 
from trying to draw to the window after it disappears.)  This was 
originally done within the body of XCreate[Simple]Window(), but Java did 
not like us overriding the property for 2D windows (refer to 2.3.1[9].) 
  Thus, the setting of WM_DELETE_WINDOW was moved into the body of 
glXMake[Context]Current() so that it affected only OpenGL windows. 
However, VGL was incorrectly replacing the list of WM protocols rather 
than simply adding WM_DELETE_WINDOW to the existing list.  VGL was also 
not checking whether WM_DELETE_WINDOW already existed in the list before 
adding it.  For reasons that are not well understood, this caused 
HyperBeam to get into an infinite loop, because calling 
XSetWMProtocols() within the body of glXMakeCurrent() seemed to cause 
the application to call glXMakeCurrent() again.  This issue may have 
affected other applications as well.

[11] Fixed an issue whereby the RPMs generated by VirtualGL's packaging 
system (including the official RPMs for VGL 2.3.2 and 2.3.3) could not 
be installed on later Fedora releases.

[12] Fixed an issue whereby glXSwapBuffers() would not work properly 
unless the drawable passed to that function was current.  This 
specifically fixes a rendering issue with voreen, but it may have 
affected other apps as well.

[13] Fixed an issue that prevented vglgenkey from working properly on 
Red Hat Enterprise Linux 7.

[14] Fixed an issue that prevented vglserver_config from working 
properly on Ubuntu 14.04.

------------------------------------------------------------------------------
Want fast and easy access to all the code in your enterprise? Index and
search up to 200,000 lines of code with a free copy of Black Duck
Code Sight - the same software that powers the world's largest code
search on Ohloh, the Black Duck Open Hub! Try it now.
http://p.sf.net/sfu/bds
_______________________________________________
VirtualGL-Users mailing list
VirtualGL-Users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/virtualgl-users

Reply via email to