Xgl

Xgl
Würfel-Ansicht eines hardwarebeschleunigten Xgl-Servers

Xgl ist eine Implementierung des X-Window-Systems, die durch OpenGL hardwarebeschleunigt ist. Das Projekt befand sich zwischen 2006 und 2008 in der Frühphase seiner Entwicklung, wurde aber im Juni 2008 eingestellt[1].

Die Entwicklung der Xgl-Architektur gab der Novell-Mitarbeiter David Reveman Ende 2004 bekannt. Der Quellcode wurde am 2. Januar 2006 geöffnet und in das freedesktop.org-Projekt einbezogen. Im Zuge dessen veränderten die Entwickler die Programmstruktur stark, um die Aufnahme zusätzlicher Grafiktreiber zu erleichtern.

Xgl sollte auf dem Linux-Desktop zusätzliche Effekte wie Transparenz, Schattierungen oder Animationen ermöglichen, welche die 3D-Funktionen moderner Grafikkarten ohne zusätzliche Belastung des Prozessors ausnutzen. Gegenwärtig verfügen die meisten zeitgemäßen PCs über ausreichend leistungsfähige Grafikkarten, jedoch bieten viele Hersteller keine Open-Source-Treiber für die unterstützten Plattformen an.

Technisch gesehen wird in einem normalen, klassischen X-Server ein Fenster gestartet, in dem durch OpenGL die direkte Kommunikation mit der Grafikkarte erlaubt wird. Dieses Fenster verhält sich dem Window-Manager und anderen Programmen gegenüber als der eigentliche X-Server, ähnlich wie beispielsweise Xnest. Die Ausgabe des Fensters ist auch das, was dem Nutzer auf den Bildschirm ausgegeben wird.

Inhaltsverzeichnis

Composition- und Window-Manager

Xgl-Server mit Compiz und echter Transparenz

Im Zuge der Entwicklung des Novell Linux Desktop 10 wurde mit Compiz ein erster, experimenteller Composition Manager entwickelt, der die neuen Möglichkeiten von Xgl demonstriert. Eine wichtige Besonderheit von Compiz ist, dass es neben der Compositing-Funktionalität gleichzeitig auch als Fenstermanager fungiert. Es ersetzt derzeit standardmäßig in einer Desktop-Umgebung den entsprechenden Fenstermanager. In Compiz sind bereits Beispielanwendungen wie Transparenz, 3D-Anordnung virtueller Desktops, Live-Vorschau von Fenstern, stufenloses Zoomen und physikalische Eigenschaften für Fenster (auch als „Wobbly“-Effekt bezeichnet) realisiert, welche die Möglichkeiten von Xgl aufzeigen.

Andere Fenstermanager wurden später ebenfalls um Compositing-Funktionen erweitert, die auch mit Xgl genutzt werden können. Die Compiz-Abspaltung Beryl kann ebenfalls mit Xgl genutzt werden. Mitte 2007 wurde Beryl und Compiz wiedervereint. Beryl wurde zu Compiz Fusion umbenannt und gab den Kern des Projektes auf. Compiz Fusion stellt nun ausschließlich Plugins für Compiz (Kernkomponente des Programms) bereit.

Xglx

Xglx war das erste Back-end, das für Xgl implementiert wurde und nimmt derzeit den Hauptteil der Entwicklungsarbeit ein. Es setzt einen bereits existierenden X-Server mit GLX voraus. Xgl soll in der Zukunft jedoch nicht auf einem X-Server laufen, sondern mit Xegl seine eigene Server-Implementierung erhalten.

Xegl

Mit Xegl existiert ein langfristiges Ziel in der X-Entwicklung. Xegl ist ein Server, der via OpenGL direkt in den Framebuffer schreibt, wobei die EGL-API sowie das freie Mesa 3D verwendet werden.

Bei Xegl soll die gesamte Grafikdarstellung über OpenGL erfolgen, sodass aktuelle Grafiktreiber einfacher konzipiert werden können. Diese sind derzeit in einzelne Teile für 2D- und 3D-Beschleunigung aufgespalten, was durch eine solche Vereinfachung entfallen würde. Ferner wird sämtlicher Quelltext, der vom Grafikkartentreiber abhängig ist, aus dem X-Server entfernt. So ist das Rendering des Servers unabhängig vom X-Server.

NVIDIA und ATI haben signalisiert, dass sie im Falle eines stabilen API binäre Treiber für OpenGL-basierende X-Server veröffentlichen würden.

Alternativen

Mit dem vom Fedora-Projekt initiierten AIGLX existiert eine weitere Variante für Linux und andere Unix-Plattformen.

Hardwarebeschleunigte 2D-Darstellung ist bereits unter dem Namen „Quartz 2D Extreme“ in Mac OS X 10.4 enthalten. Windows Vista verwendet eine ähnliche Technik.

Weblinks

 Commons: Xgl – Album mit Bildern und/oder Videos und Audiodateien

Einzelnachweise

  1. Golem: Xgl wird nicht weiterentwickelt

Wikimedia Foundation.

Игры ⚽ Поможем написать реферат

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Xgl — is an X server architecture designed to take advantage of modern graphics cards via their OpenGL drivers, layered on top of OpenGL via glitz. It supports hardware acceleration of all X, OpenGL and XVideo applications and graphical effects by a… …   Wikipedia

  • XGL — Développeur Novell Inc. Environnement Linu …   Wikipédia en Français

  • Xgl — Développeur Novell Inc. Environnement Linux, * …   Wikipédia en Français

  • XGL — Один из эффектов Xgl  «куб» Xgl  это архитектура X сервера, использующая прорисовку через видеокартах с их драйверами OpenGL, поддерживающими аппаратное ускорение во всех приложениях Х, OpenGL и XVideo и графические эффекты на композитном оконном …   Википедия

  • XGL — Würfel Ansicht eines hardwarebeschleunigten Xgl Servers Xgl ist eine Implementierung des X Window Systems, die durch OpenGL hardwarebeschleunigt ist. Das Projekt befand sich zwischen 2006 und 2008 in der Frühphase seiner Entwicklung, wurde aber… …   Deutsch Wikipedia

  • Xgl — Данные в этой статье приведены по состоянию на 2006 год. Вы можете помочь, обновив информацию в статье …   Википедия

  • Xgl — Vista de cubo en un servidor Xgl con aceleradora gráfica. Xgl es una arquitectura X server, iniciada por David Reveman, en realidad una capa que se encuentra sobre OpenGL vía glitz. Aprovecha las ventajas de las modernas tarjetas gráficas… …   Wikipedia Español

  • XGL — MegaBitz Graphics Language file (Computing » File Extensions) Xtreme Gaming League (Community » Sports) * Granville Lake, Manitoba, Canada (Regional » Airport Codes) …   Abbreviations dictionary

  • XGL — X11 Window Graphics Library …   Acronyms

  • xgl — ISO 639 3 Code of Language ISO 639 2/B Code : ISO 639 2/T Code : ISO 639 1 Code : Scope : Individual Language Type : Extinct Language Name : Galindan …   Names of Languages ISO 639-3

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”