August 10th, 2013
Xgl was originally developed on public mailing lists, but for a extended time, till January two, 2006 most development of Xgl was done behind closed doors. On that day the supply to Xgl was re-opened to the public , and integrated in freedesktop.org, along with key restructuring to enable a wider variety of supported show drivers. X server backends employed by Xgl contain Xglx and Xegl. In February 2006 the server gained wide publicity after a public display where the Novell desktop group demonstrated a desktop making use of Xgl with a number of visual effects such as translucent windows and a rotating 3D desktop. The effects had initial been implemented in a composite manager known as glxcompmgr (not to be confused with xcompmgr), now deprecated due to the fact a number of effects could not be adequately implemented without having tighter interaction in between the window manager and the composite manager. As a answer David Reveman developed Compiz, the very first proper OpenGL compositing window manager for the X Window Technique. Later, in September 2006, the Beryl compositing window manager was released as a fork of the original Compiz. Compiz and Beryl have merged back in April 2007, which resulted in the improvement of Compiz Fusion.
OpenGL does not specify how to initialize a display and manipulate drawing contexts. Instead these operations are handled by an API certain to the native windowing technique. So far there are two various backend approaches to solving this initialization problem. Most likely the majority of each and every backend will contain the identical code and the differences will mostly be in the initialization portions of the servers.
Xglx was the initial backend implemented for this architecture. It calls for an currently existing X server to run on leading of and makes use of GLX to generate an OpenGL window which Xgl then makes use of, equivalent to Xnest. This mode is only intended to be used for development in the future, as it is redundant to require an X server to run Xgl on prime of.
At XDevConf 2006 (the 2006 X development conference), NVIDIA created a presentation arguing that this is the incorrect path to take simply because the layered server abstracts functions of the cards away. This makes driver specific capabilities like support for 3D glasses and dual monitor help considerably far more challenging.
Nonetheless, delegating initialization to an current X server allows the developers to right away concentrate on server functionality rather than dedicating substantial time to specifics of interfacing with numerous video hardware. At the moment, Xglx does not officially help multiple monitors, even though it has been accomplished on Ubuntu Dapper / ATI / NVIDIA (twinview).
Xegl was stated[who?] to be the future of Xgl and a long term goal of X server improvement. It shares significantly of the drawing code with the Xglx server, but the initialization of the OpenGL drawable and context management is handled by modular displays the EGL API developed by Khronos (EGL is a window program-independent equivalent to the GLX and WGL APIs, which respectively enable OpenGL support in X and Microsoft Windows). The existing implementation makes use of Mesa-solo to supply OpenGL rendering directly to the Linux framebuffer or DRI to the graphics hardware. As of July 2007[update] Xegl can only be run utilizing Radeon R200 graphics hardware and development is currently stalled. It is likely that it will remain so till the Xglx server has verified itself and the closed source drivers add support for the EGL API, when it ought to be a transparent replacement for the nested Xglx server.
Structuring all rendering on top of OpenGL could potentially simplify video driver improvement. It removes the artificial separation of 2D and 3D acceleration. This is advantageous as 2D operations are frequently unaccelerated (which is counterintuitive, because 2D is a subset of 3D).
It also removes all driver-dependent code from the X server itself, and makes it possible for for accelerated Composite and Render operations independent of the graphics driver.
Hardware acceleration of 2D drawing operations has been a frequent function of numerous window systems (which includes X11) for numerous years. The novelty of Xgl and comparable systems is the use of APIs particularly developed for 3D rendering for accelerating 2D desktop operations. Prior to the adoption of anti-aliased drawing by X11, the use of 3D rendering APIs for 2D desktop rendering was undesirable due to the fact such APIs did not make the pixel correct rendering guarantees that are portion of the original X11 protocol definition.
Hardware-accelerated OpenGL window and desktop rendering, restricted to using OpenGL for texture composition, has been in use in Mac OS X, in a technologies called Quartz Extreme, since Mac OS X v10.two. Quartz 2D Intense is an enhancement of this function and much more directly comparable to Xgl. Like Xgl, Quartz 2D Intense brings OpenGL acceleration to all 2D drawing operations (not just desktop compositing) and ships with Mac OS X v10.4, but is disabled by default pending a formal declaration of production-readiness. Core Animation is the extension of this effort for Leopard (Mac OS X v10.five).
Numerous desktop interfaces primarily based on 3D APIs have been created, a lot more recently OpenCroquet and Sun Microsystems’ Project Searching Glass these take benefit of 3D acceleration for application built inside their own framework, but do not seem to accelerate existing 2D desktop applications rendered within their environment (usually via mechanisms like VNC).
Microsoft developed a equivalent technologies based on DirectX, named the DWM, as component of its Windows Vista operating method. This technology was first shown publicly at Microsoft’s October 2003 PDC.
As of May possibly 2006[update], the Xgl X Server (and related elements like the Compiz compositing manager and related graphical config tools) ships as a non-default in one key Linux distribution, SUSE ten.1, and is integrated in modular displays Frugalware Linux or SUSE Linux Enterprise Desktop ten. Xgl can be set up pretty easily for Ubuntu 6.06 LTS (Dapper Drake) and 6.ten (Edgy Eft) and for Freespire with binary packages from unofficial repositories. Xgl is also available as an overlayed package in Gentoo Linux, and as a PKGBUILD for Arch Linux.
The most current Mandriva Linux 2007 involves official packages to run Compiz, utilizing Xgl and AIGLX. Mandriva supplies drak3d, a tool to configure a 3D Desktop in two clicks.
Ubuntu six.ten “Edgy Eft” and later use AIGLX, not Xgl, by default.
If AIGLX or NVIDIA’s implementation of accelerated indirect rendering can be utilised, there is no need to use Xgl. Xgl is not needed for any Intel graphics chipset from 810 onwards, NVIDIA GeForce 3 to GeForce 7 (through the official 9629 driver), and ATI cards with AIGLX assistance (through either the free of charge radeon or the non-totally free fglrx drivers).
^ XGL Version Info
^ ALGIX, Nvidia, XGL and metacity
^ Most current XGL Code
^ Novell’s XGL Code posted
^ Novell Public Release XGL Code
^ SUSE XGL
^ OpenSUSE XGL sources
X Window Technique
Wikimedia Commons has media associated to: Compiz
Announcement of Xgl on the xorg mailing list
Accelerated X flame wars!aybe not an write-up about the differences among AIGLX and Xgl
Write-up: The State of Linux Graphics overview of numerous approaches to replace the current X server
HOWTO, forums, help
openSUSE wiki for Xgl
Xgl HowTos: Novell, Ubuntu, Debian Etch, Gentoo Linux
How-to set up XGL on Fedora five/six/7 Xgl Beryl and Compiz on Fedora
Screenshots, screencast, demo video
Novell Xgl announcement like video and screenshots
Novell Open Audio podcast Xgl with David Reveman 7 April 2006, discusses the basics and future of Xgl and Compiz
Videos of Xgl on SUSE Linux Enterprise Desktop 10
Slides, screenshots and a video with far more effects
the video demonstrating Compiz on Xgl
Yet another Xgl Video
Mandriva 3D Video
v d e
X Window Program
Core Protocol Xlib X Window selection X window manager X session manager X show manager X Toolkit X Window authorization Intrinsics X11 colour names
Re-parenting Compositing Stacking Tiling
X Image Extension X keyboard extension X video extension Shape extension Shared memory extension AIGLX GLX XRender MPX DPS
Cygwin/X KDrive X11.app X.Org Server X-Win32 X386 XFree86 XGGI XDarwin Xming Xsun Xgl
ICCCM EWMH XDS freedesktop.org
xcalc xclock xedit xload xterm xeyes Desktop environments
Categories: Freedesktop.org | X Window extensions | OpenGLHidden categories: All articles with especially-marked weasel-worded phrases | Articles with especially-marked weasel-worded phrases from May 2009 | Articles containing potentially dated statements from 2007 | All articles containing potentially dated statements | Articles containing potentially dated statements from 2006 modular displays