OpenGL Window Rendering
This page is about the OpenGL rendering mode of the xpra client, for running opengl applications in an xpra session see Usage: OpenGL Applications, for general opengl debugging see wiki/Debugging/OpenGL.
This wiki/ClientRendering mode should be used by default on platforms that support it, which is most of them, when using the GTK2 client, which is the default client.
OpenGL warnings/errors, please first check the OpenGL FAQ entries
This mode should be much faster than the fallback
Pixmap based rendering as it is GPU accelerated and the Colourspace Conversion step can be skipped as it supports YUV pixel formats natively.
Some drivers are blacklisted for opengl support, for example: older versions of the
nouveau driver on Linux, and the Intel driver on all platforms.
Status messages should be printed out when using the command line tool to attach to a session (unless the configuration file or command line options specifically disabled it).
--opengl=yes|no|auto option can be used to override the automatic detection of supported drivers.
You can also find the opengl driver information in the
Features pane of the
Session Info dialog from the system tray menu.
To test/diagnose your system and driver support, run:
- on Posix (source: gl_check.py):
- on MS Windows:
- on OSX:
The output will show the driver, vendor and the status of various required extensions.
Intel Driver Issues
Why is the Intel opengl driver greylisted? ("Enable at your own risk")
Because it doesn't work very well. See:
- #1050 - fullscreen crash on win32
- #1024 - glTexParameteri error
- #968 - rendering dimensions
- #809 - rendering fails
- #808 / #563 / #1087 - OSX crashes
- #745 - windows greyed out
- #565 - Linux opengl errors
- #147 - original ticket - odd behaviour reported already
- #1358 - glclear bug in driver
- #1362 - high cpu usage due to non-opengl rendering
OpenGL Related Tickets
- #147 - original feature ticket
- #150 -
- #226 - OSX build issues
- #227 - MS Windows specific issues
- #229 - bug: hard crash
- #314 -
VirtualBoxbug (crash VM)
- #321 - problem with small rgb updates
- #328 - codec split
- #367 - minor UI tweak
- #365 - future optimization
- #372 - Linux client crash
- #385 - Improvements: scaling / RGB
- #468 -
OpenGLrendering bug due to alpha channel
- #478 - flickering
- #492 - corrupted pixels on resume
- #969 / #942 - maximum size of opengl windows
- #929 - crash on suspend / resume
- #792 - synchronized painting
- #717 - zero copy crashes
- #679 - improvements tracker ticket
- #646 / #818 - paint spinners using opengl
- #901 - crash on win32 triggered by session lock + unlock
- #1309 - 30-bit deep colour support
OpenGL Reference Links
- opengl.org wiki
- open.gl This guide will teach you the basics of using OpenGL to develop modern graphics applications
- opengl-tutorial.org This site is dedicated to tutorials for OpenGL 3.3 and later ''
- OpenGL 2 Tutorials at swiftless.com
- wikibooks.org: OpenGL Programming
- Premultiplied Alpha (in OpenGL)
- Modern OpenGL tutorial (python)