OpenGL (GLX)

Note: Accelerated OpenGL is still under active development and should be considered beta quality, but should be working well enough to be useful. Please report problems with specific OpenGL applications to the cygwin-xfree mailing list.

The Cygwin/X X Server supports both software OpenGL rendering (using the mesa software renderer), and hardware accelerated OpenGL rendering (using the native Windows OpenGL (WGL) interface).

The X server command line options -wgl and -nowgl turn on and off the use of the native Windows OpenGL implementation. Currently -wgl is only supported in multiwindow mode, and is on by default in that mode.

Table 4-1. Summary of OpenGL rendering options

software rendering a

hardware-accelerated rendering

indirect

(Uses GLX protocol, limited to OpenGL 1.4)

start server with -nowgl option

export LIBGL_ALWAYS_INDIRECT=1

start server with -wgl option

export LIBGL_ALWAYS_INDIRECT=1

direct

unset LIBGL_ALWAYS_INDIRECT

start server with -wgl option

export LIBGL_USE_WGL=1 b

unset LIBGL_ALWAYS_INDIRECT

Notes:
a. The software renderer used (e.g. llvmpipe, softpipe) can be selected using the GALLIUM_DRIVER environment variable.
b. Since direct accelerated rendering is currently experimental, the LIBGL_USE_WGL environment variable is required to enable it, but that will be removed when the feature is mature, at which point it will be the default and export LIBGL_ALWAYS_SOFTWARE=1 will be required to force software rendering.

Currently, in multiwindow mode, the default configurations are:

If glxinfo | grep OpenGL outputs something mentioning your graphics card vendor, you have hardware-accelerated rendering. If it mentions Mesa, you have software rendering.

Please ensure you are using the latest display drivers for your graphics hardware before reporting any visual issues with WGL.

Note: Because of it's lack of support for modern OpenGL versions (>1.4), indirect rendering is considered of limited use. An -iglx option was added in X server 1.16 which allows it's use to be prohibited, which will probably be the default in X server 1.17.

Known issues: