Jump to content

AIGLX: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
Thijs!bot (talk | contribs)
m robot Adding: sk:AIGLX
→‎Rationale: del redundant link
Line 4: Line 4:
== Rationale ==
== Rationale ==


There are two ways that a windowing system can allow an OpenGL implementation to talk to the graphics card. The first is to specify the OpenGL command stream in a portable network-neutral manner using a client/server implementation similar to the X11 drawing routines. This is the ''indirect'' route as the drawing commands are sent to the X server and then the xserver sends them along to the graphics card. The second way, which is at the base of [[Xgl]], is to open a window and then allow the OpenGL library to send commands directly to the graphics card. Accelerating the indirect OpenGL path is orthogonal to how the X server itself is implemented, but it has the side effect of allowing the OpenGL command stream to be more easily captured and redirected to a texture. This allows Compiz and other [[compositing window manager]]s to be built on top of a traditional server with a small GLX extension rather than requiring a full Xgl server. Another advantage is that [[DRI]] bypass Xgl server (so it could not be accelerated), while with AIGLX everything is allowed to be composed.
There are two ways that a windowing system can allow an OpenGL implementation to talk to the graphics card. The first is to specify the OpenGL command stream in a portable network-neutral manner using a client/server implementation similar to the X11 drawing routines. This is the ''indirect'' route as the drawing commands are sent to the X server and then the xserver sends them along to the graphics card. The second way, which is at the base of [[Xgl]], is to open a window and then allow the OpenGL library to send commands directly to the graphics card. Accelerating the indirect OpenGL path is orthogonal to how the X server itself is implemented, but it has the side effect of allowing the OpenGL command stream to be more easily captured and redirected to a texture. This allows Compiz and other [[compositing window manager]]s to be built on top of a traditional server with a small GLX extension rather than requiring a full Xgl server. Another advantage is that DRI bypass Xgl server (so it could not be accelerated), while with AIGLX everything is allowed to be composed.


== Deployments ==
== Deployments ==

Revision as of 09:46, 29 November 2006

AIGLX running with Compiz on Fedora Core 6

Accelerated Indirect GLX ("AIGLX") is an open source project founded by the X.Org Foundation and the Fedora Core community to allow accelerated indirect GLX rendering capabilities to X.org and DRI drivers. This allows remote X clients to get fully hardware accelerated rendering over the GLX protocol. AIGLX is also a required component to offering good performance when using an OpenGL compositing window manager, such as Compiz or Beryl.

Rationale

There are two ways that a windowing system can allow an OpenGL implementation to talk to the graphics card. The first is to specify the OpenGL command stream in a portable network-neutral manner using a client/server implementation similar to the X11 drawing routines. This is the indirect route as the drawing commands are sent to the X server and then the xserver sends them along to the graphics card. The second way, which is at the base of Xgl, is to open a window and then allow the OpenGL library to send commands directly to the graphics card. Accelerating the indirect OpenGL path is orthogonal to how the X server itself is implemented, but it has the side effect of allowing the OpenGL command stream to be more easily captured and redirected to a texture. This allows Compiz and other compositing window managers to be built on top of a traditional server with a small GLX extension rather than requiring a full Xgl server. Another advantage is that DRI bypass Xgl server (so it could not be accelerated), while with AIGLX everything is allowed to be composed.

Deployments

The AIGLX project has been merged into X.Org and is available as of X.Org 7.1. Currently, Mandriva 2007, Fedora Core 6, Ubuntu 6.10 (Edgy Eft), and Gentoo have the ability to run AIGLX out of the box, and installation repositories are available for older versions of the distributions. Sabayon Linux 3.0 livecd/livedvd ships with AIGLX available from the boot prompt.

AIGLX needs driver support to run. Specifically, it depends on the texture_from_pixmap OpenGL extension, which is supported on embedded Intel i810 through i965 graphics cards & ATI Radeon cards up to X800 series through free drivers in X.org and NVIDIA graphics card through NVIDIA's proprietary 9xxx series drivers (although with these drivers, compositing managers do not require AIGLX proper - only X.Org 7.1).

Relationship to Xgl

Although the AIGLX project has features similar to Xgl, it is not a competing product. The project, according to the Fedora Project Wiki, was founded because Xgl was written during its final stages "behind closed doors". This disallowed peer-review of the system, which goes against the open source philosophy, and there are critics of the Xgl architecture who state that because of the lack of peer-review, the system has too many flaws to be useful. It is stated, however, that both the AIGLX and Xgl projects will swap code and work in a partnership to ensure compatibility and improvements in both systems.

See also