Version 30 (modified by 3 years ago) (diff) | ,
---|
OpenGL Window Rendering
This page is about the OpenGL rendering mode of the xpra client with version 2.2 or later. 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 most platforms.
For any OpenGL
warnings/errors, please first check the OpenGL FAQ entries
This rendering mode should be much faster as it is GPU accelerated and the Colourspace Conversion step can be skipped as it supports YUV pixel formats natively.
Notes
Some drivers are blacklisted for opengl support (see gl_drivers.py), for example: older versions of the nouveau
driver on Linux, older versions of the the Intel driver are greylisted 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).
The --opengl=yes|no|auto|native|gtk
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 or diagnose your system and driver support, run:
- on Posix (source: gl_check.py):
python xpra/client/gl/gl_check.py
- on MS Windows:
OpenGL_check.exe
- on Mac OS:
./Xpra.app/Contents/Helpers/OpenGL_check
The output will show the driver, vendor and the status of various required extensions.
Intel Driver Issues
Why is the Intel opengl driver greylisted?
Because it doesn't work very well. See:
- #1367 enable more opengl chipsets
- #1233 whitelist some more intel chipsets
- #1364 painting random window as solid white upon connection
- #1469 / #1468 - window resizing problems
- #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 -
OpenGL
usage bugs - #226 - OSX build issues
- #227 - MS Windows specific issues
- #229 - bug: hard crash
- #314 -
VirtualBox
bug (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 -
OpenGL
rendering 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
- #1500 - "vmware" driver crash
- #1569 - python3 opengl client
- #1682 - transparency does not work on win32
- r17113: require mesa-dri-drivers RPM so software opengl will work (Fedora)
OpenGL
Reference Links
- mesamatrix: mesa driver implementation coverage
- 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)