Release highlights since 349.16:
- Added support for the following GPU:
- GeForce GPU
- Added the ability to configure the swapping behavior for quad-buffered stereo visuals. The driver can be configured to independently swap each eye as it becomes ready, to wait for both eyes to complete rendering before swapping, or to allow applications to specify which of these two behaviors is preferred by setting the swap interval. This setting can be adjusted in the nvidia-settings control panel, or via the NV-CONTROL API.
- Fixed a regression which caused the GPU fan status display to disappear from the nvidia-settings control panel.
- Added reporting of ECC error counts to the nvidia-settings control panel.
- Fixed a bug that sometimes prevented OpenGL sampler objects from being properly deallocated when destroying OpenGL contexts.
- Fixed a bug that caused GLX_EXT_framebuffer_sRGB to incorrectly report sRGB support in 30 bit-per-pixel framebuffer configurations.
- Added support for G-SYNC with sync-to-vblank disabled. This allows applications to use G-SYNC to eliminate tearing for frame rates below the monitor's maximum refresh rate but allow tearing above the maximum refresh rate in order to minimize latency.
When G-SYNC is active and sync-to-vblank is enabled, the frame rate is limited to the monitor's maximum refresh rate.
- GLSL gl_Fog.scale is now +infinity when gl_Fog.end equals gl_Fog.start. Previously, the value 0 was used, but this broke certain applications such as the game XIII running on Wine (Wine bug #37068).
- Enabled G-SYNC by default when Unified Back Buffer (UBB) is disabled.
- Updated the NVIDIA GPU driver to avoid using video memory already in use by vesafb.
- Fixed a bug causing loss of stereo synchronization in certain Quadro Sync framelock configurations.
- Fixed a rare deadlock condition when running applications that use OpenGL in multiple threads on a Quadro GPU.
- Fixed a bug which caused truncation of the EGLAttribEXT value returned by eglQueryDeviceAttribEXT() on 64-bit systems.