Der 3D-Desktop, waberndes Spielzeug oder spürbare Arbeitserleichterung? Metisse, der jüngste Beitrag zu diesem publikumswirksamen Thema, plädiert mit Entschiedenheit für Letzteres.
Windows Vista buhlt mit grafischen Effekten um die Gunst der Käufer. Doch Linux-Anwender genießen einen ähnlichen Augenschmaus mit Compiz und Beryl schon seit Anfang 2006. Dass OpenGL-Fenstereffekte im Trend sind, demonstriert auch der französische Distributor Mandriva, der Anfang dieses Jahres mit Metisse seine eigene Version eines OpenGL-Desktops beisteuerte.
Während bei Compiz [1] und dessen Fork Beryl [2], der sich Anfang März wieder für einen Zusammenschluss mit dem Mutterprojekt entschieden hat, räumliche Effekte wie der Desktop-Würfel im Vordergrund stehen, behauptet der französische Desktop Metisse [3], gerade kein 3D-Desktop zu sein. In bewusster Absetzung zu den überwiegend dekorativen, aber wenig Nutzen bringenden Grafikeffekten der Mitbewerber schreibt Metisse die Usability groß. Zeit zu fragen, was der Anwender im Alltag eigentlich von einem 3D-Desktop hat.
Technische Hintergründe
Vor AIGLX und XGL hatten Fenstermanager nichts mit 3D-beschleunigter Hardware zu schaffen. Dies war ausschließlich Sache von Programmen wie 3D-Software oder Spielen und fand nur innerhalb des Anwendungsfensters statt. Bei 3D-Desktops setzt die Hardware-beschleunigte 3D-Grafik eine Ebene tiefer an, sodass OpenGL-Effekte wie die Projektion des Desktops auf einen Würfel (Abbildung 5) oder federnde Fenster (Abbildung 8) möglich sind.
Das technische Prinzip ist an sich einfach: Zwischen das Rendering der Fenster und deren Darstellung auf dem Schirm schiebt sich ein Zwischenschritt. Zunächst entsteht für jedes Fenster ein unsichtbares Offscreen-Abbild im Speicher der Grafikkarte. Ein Composite-Manager fügt die einzelnen Fenster dann zum sichtbaren Desktop zusammen. Dieses Compositing nutzt OpenGL, sodass Effekte wie Transparenz oder Deformation Hardware-beschleunigt über die Bühne gehen. Die Anwendungen merken nichts davon, wenn der Composite-Manager ihre Fenster diesen optischen Effekten unterzieht.
Wettbewerb der Großen
Was einfach klingt, ist in der technischen Umsetzung nicht trivial: Es geht letztlich darum, das umfangreiche X-Protokoll in OpenGL-Befehle umzusetzen. Die bereits Ende 2004 von Novell angekündigte, jedoch erst Anfang 2006 als Quellcode vorgestellte Lösung XGL schreibt hierfür den X-Server neu [4]. Der X.org-Xserver läuft zwar auch bei XGL noch im Hintergrund, er bedient allerdings nur noch XGL als einzigen Client. Die Anwendungsprogramme nehmen mit dem XGL-Server Verbindung auf.
Die vom Fedora-Projekt angestoßene alternative Lösung AIGLX setzt anders als XGL, das die Architektur modifiziert, darauf, den bereits bestehenden X-Server Schritt für Schritt mit 3D-beschleunigten Funktionen auszurüsten [5]. AIGLX ist seit der Version 7.1. Bestandteil des Xserver von X.org.
Neu abgemischt
AIGLX oder XGL – oder genauer gesagt, die Extension »GLX_EXT_texture_from_pixmap«, die der 3D-beschleunigte X-Server bereitstellt – sind Voraussetzung für einen Composite-Manager, der in Compiz und dem, was die technischen Grundlagen angeht, baugleichem Beryl für die Effekte sorgt. Aktuelle Versionen des proprietären Nvidia-Treibers [6] stellt aber »GLX_EXT_texture_from_pixmap« auch ohne modifizierten X-Server zur Verfügung.
AIGLX und XGL setzen ihrerseits Hardware-beschleunigte Grafiktreiber voraus. Auskunft, mit welchen Karten sie funktionieren, geben [7] und [8]. AIGLX gilt, was die Grafikkarten angeht, als wählerischer. XGL arbeitet dagegen mit den proprietären Treibern von Nvidia und ATI [9] meist reibungslos zusammen. Die X-Server-unabhängige Nvidia-Erweiterung steht zur Verfügung, wenn der Befehlsaufruf »glxinfo | grep GLX_EXT_texture_from_pixmap« die genannte GLX-Erweiterung findet.
Französischer Alleingang
Der französische 3D-Desktop Metisse basiert weder auf AIGLX noch XGL, sondern bringt eine eigene Variante eines modifizierten X-Servers mit. Sein Composite-Manager Núcleo arbeitet mit einer angepassten FVWM-Version zusammen. Wie Compiz und Beryl nutzt Metisse OpenGL. Sinnvoll arbeiten lässt sich mit ihm daher nur, wenn die Grafikkarte 3D-Beschleunigung bietet. Das vergleichsweise spärlich dokumentierte Metisse-Projekt stellt keine Informationen darüber zur Verfügung, mit welchen Grafikkarten die Software funktioniert.

Abbildung 1: Neun auf einen Blick: Der ausgezoomte Überblick zeigt bei Metisse alle Arbeitsflächen mit den geöffneten Fenstern.

Abbildung 2: Metisse, sehr zuvorkommend: Zum Kopieren macht das Quellfenster Platz, wenn es beim Markieren im Weg ist.
|
Tabelle 1: |
|
|---|---|
|
Tastenkombination |
Effekt |
|
[Windows] + [Scrollrad] (über dem Desktop) |
Die gesamte Arbeitsfläche zoomen |
|
[Windows] + [Scrollrad] (über der Titelleiste) |
Fenster stufenlos zoomen |
|
[Windows] + [Z] |
Fenster stufenlos zoomen |
|
[Alt] + [Ctrl] + [Pfeiltasten] |
Zwischen den Desktopsegmenten wechseln |
|
[Windows] + [T] |
Transparenz stufenweise erzeugen |
|
[Windows] + [I] |
Fenster auf Icon-Größe verkleinern |
|
[Windows] + [F4] oder [F5] |
Fenster um die y-Achse schwenken |
|
[Windows] + [F6] oder [F7] |
Fenster um die x-Achse schwenken |
|
[Windows] + [C] |
Fenster zu einer Linse deformieren |
|
[Windows] + [A] |
Fenster um den Mittelpunkt drehen |
|
[Windows] + [R] oder [F1] |
Effekt(e) rückgängig machen |
Installation
Da Distributionen wie Suse, Fedora oder Ubuntu fertige Pakete für Compiz und/oder Beryl enthalten, sollte die Installation eigentlich ohne Schwierigkeiten verlaufen. Im Test mit unterschiedlichen Setups traten dennoch schwer zu lokalisiertende Stabilitäts- und Anzeigeprobleme zu Tage. Teilweise ließen sie sich auf einen nachträglichen Wechsel des Grafiktreibers zurückführen.
Metisse ist derzeit exklusiv bei Mandriva enthalten. Andere Distributionen setzen den Eigenbau aus den Quellen [5] voraus. Nach Aussage der Entwickler soll dies problemlos möglich sein. Sogar auf Mac OS X soll Metisse laufen.
Kein 3D-Desktop
Ein Desktop, der die Tiefe das Raumes nutzt, aber dennoch kein 3D-Desktop ist – mit diesem Paradoxon versucht sich Metisse von reinem Eye Candy wie den federnden Fensterrahmen der Konkurrenten Compiz und Beryl abzusetzen. Metisse zielt darauf ab, mit Features wie perspektivischer Darstellung der Fenster oder einem Umklappen der Fensterecken bei Drag&Drop-Vorgängen eine echte Verbesserung in der Benutzbarkeit des Desktops zu erzielen.
Die Desktopoberfläche ist in neun Segmente aufgeteilt, durch die der Benutzer mit [Alt]+[Ctrl]+[Pfeiltasten] navigiert. [Windows]+[Mausrad] zoomt aus dem gerade aktiven Segment heraus, sodass der Benutzer eine verkleinerte Ansicht aller neun Desktopsegmente erhält (Abbildung 1).
Metisse zoomt auch einzelne Fenster stufenlos ein oder aus. [Windows]+[Z] vergrößert kleine und schlecht lesbare Inhalte, was besonders sehbehinderten Anwendern nützt. Ob jemand die stufenweise einstellbare Transparenz der Fenster, mit der sich gerade nicht benötigte Fenster abblenden lassen, als hilfreich empfindet, ist wohl in erster Linie Geschmackssache.
Von eindeutigem Nutzwert sind dagegen die umklappenden Fensterecken, die bei sich überlappenden Fenstern den verdeckten Platz freigeben, wenn der Anwender Text zwischen beiden Fenstern kopiert (Abbildung 2). Das gerade aktive Fenster klappt dabei so weit zur Seite, dass der markierte Text in der darunter liegenden Anwendung frei zugänglich wird. Lässt der Benutzer die Maustaste los, klappt die Ecke zurück, der markierte Text lässt sich nun über die mittlere Maustaste in das oben liegende Fenster einfügen. Sind weitere Fenster im Weg, verkleinert sie [Windows]+[F4] auf Symbolgröße. Dieselben Tasten stellen die ursprüngliche Größe wieder her.
Tiefe mit Nutzwert
Für mehr Übersicht soll auch eine perspektivische Anordnung der Fenster sorgen. Sie lassen sich mit [Windows]+[F4] und [Windows]+[F5] in der Vertikalen sowie mit [Windows]+[F6] und [Windows]+[F7] in der Horizontalen schwenken (Abbildung 3). Dank der Fensteraktivierung bei der Berührung mit der Maus wechselt der Benutzer sehr schnell zwischen den Fenstern. Hat sich der Anwender die Tastatur-Shortcuts eingeprägt, bedient er den Metisse-Desktop mit diesen Funktionen tatsächlich sehr schnell. Leider ließ sich die Funktion der Tastenkombination [Windows]+[R] nicht eindeutig ermitteln: Laut Dokumentation soll sie alle Fenster in den vorigen Zustand zurückversetzten. Im Test erfasste diese Funktion allerdings oft nur ein Fenster.
Auch Metisse beschränkt sich nicht auf reinen Nutzwert: Zu einer Linse deformierte oder verdrehte Fenster (Abbildung 4) appellieren an den Spieltrieb, die Arbeit erleichtern sich jedoch nicht. Tabelle 1 bietet einen Überblick über die Tastatur-Shortcuts in Metisse.

Abbildung 3: Platz gemacht: Seitlich verdrehte Fenster beanspruchen weniger Raum auf dem Desktop, der Inhalt bleibt dennoch sichtbar.

Abbildung 4: Spielerische Ausrutscher: Auch Metisse verzichtet nicht ganz auf Eye Candy ohne konkreten Nutzwert.
Die dritte Dimension
Im Gegensatz zu Metisse legen Compiz und Beryl das Gewicht auf echte 3D-Effekte, wie besonders der Desktop-Cube optisch eindrucksvoll demonstriert (Abbildung 5). [Alt]+[Ctrl] und die linke Maustaste drehen diesen Würfel, dessen Oberfläche den virtuellen Arbeitsflächen von KDE oder Gnome entsprechen. Bei passender Einstellung, die der Anwender unter Beryl über die GTK-Anwendung »beryl-settings« vornimmt, verschwinden Fenster beim Schließen nicht mehr einfach vom Desktop, sondern brennen mit realistischer Flammen- und Rauchentwicklung ab (Abbildung 6).
Während diese recht aufdringliche Feuer-Animation kaum zu konzentrierterem Arbeiten beiträgt, wirken andere Effekte beim Öffnen und Schließen von Fenstern auch auf Dauer angenehm, etwa das weiche Ein- und Ausblenden. Ob weich auf- und abblendende Fenster allerdings tatsächlich die Augen schonen, muss jeder für sich entscheiden.
Der Regentropfen-Effekt mit [Shift]+[F9], der den ganzen Desktop in eine Wasseroberfläche verwandelt, stellt nicht nur hohe Anforderungen an die Grafikkarte, sondern auch an die CPU. Das gilt auch für die Feuer-Effekte, deren Flammen- und Rauchintensität der Benutzer einstellen kann. Der Compiz- oder Beryl-Effekt, der wohl am meisten Aufsehen erregte, sind die Wobly Windows (Abbildung 7): Die Simulation einer Feder bewirkt, dass sich Fenster beim Verschieben durchbiegen und schwingen, als wären sie aus Gummi.
Alles in allem fallen die vorgestellen Effekte in die Kategorie Spiel und Spaß. Einen echten Nutzwert bieten sie nicht. Dennoch bringen ihnen viele Anwender großes Interesse entgegen. Der Aufwand, den Microsoft und Apple in ähnliche Effekte inverstierten, scheint darauf hinzudeuten, dass die Hersteller sie als zugkräftige Motive für einen Systemwechsel oder ein Upgrade werten.

Abbildung 5: Der transparente Würfel vermittelt dem Benutzer das Gefühl, dass auch sein Desktop frei im Raum schwebt.

Abbildung 6: Eye Candy, das kaum die Konzentration fördert: Bei entsprechender Einstellung verbrennen die Fenster beim Schließen.
Eine echte Hilfe
Hilfreich für die Übersicht auf dem Desktop ist es jedoch, inaktive Fenster transparent darzustellen. Einerseits verringert sich deren Kontrast, sodass sie die Aufmerksamkeit weniger auf sich ziehen. Zum anderen geben sie andeutungsweise den Blick auf darunter liegende Fenster frei. Auch die von Mac OS X abgeschaute Exposé-Funktion (Abbildung 8) erleichtert die Arbeit mit vielen Fenstern: Der Shortcut [F8] unter Compiz oder [Ctrl]+[Alt]+[Pfeiltaste nach oben] unter Beryl ordnet alle offenen Fenster verkleinert auf dem Desktop an. Ein Klick auf eines der Fenster aktiviert es. Wie unter Metisse vergrößert [Windows]+[Mausrad] Fensterbereiche für eine bessere Lesbarkeit. [Alt]+[Mausrad] verändert die Transparenz einzelner Fenster unabhängig davon, ob sie aktiv sind oder nicht. Tabelle 2 fasst die Tastatur-Shortcuts in Beryl und Compiz zusammen.

Abbildung 7: Realistisch simulierte Physik: Die Fenster schwingen beim Verschieben, als wären sie aus federndem Material.

Abbildung 8: Mehr als nur ein Gimmick: Die Exposé-Funktion hilft, auch bei vielen geöffneten Fenstern die Übersicht zu behalten.
|
Tabelle 2: Shortcuts |
|
|---|---|
|
Tastenkombination |
Effekt |
|
[Alt] + [Ctrl] + [Pfeiltasten] |
Zwischen den Arbeitsflächen wechseln |
|
[Alt] + [Ctrl] + [linke Maustaste] |
Den Würfel mit der Maus drehen |
|
[Alt] + [Scrollrad] |
Fenstertransparenz einstellen |
|
[Windows] + [Scrollrad] |
Die gesamte Arbeitsfläche zoomen |
|
[Ctrl] + [Alt] + [Pfeiltaste nach oben] |
Exposé (XGL/Compiz) |
|
[Ctrl] + [Alt] + [Pfeiltaste nach unten] |
Zeigt alle Arbeitsflächen nebeneinander an |
|
[F8] |
Exposé (AIGLX/Beryl) |
|
[Shift] + [F9] |
Regentropfen ein- und ausschalten |
|
[Windows] + [Ctrl] |
Wassertropfeneffekt am Mauszeiger ein-/ausschalten |
Fazit
Wer auf der Suche nach messbarem Nutzwert im Verhältnis zum Aufwand ist, braucht keinen Blick auf Beryl oder Compiz zu riskieren: Usability-Verbesserungen wie die Eposé-Funktion, die einen verkleinerten Überblick über alle offenen Fenster bietet, rechtfertigen kaum die gelegentlich auftretenden Installationsmühen oder Instabilitäten. Reiner Nutzwert ist aber sicherlich auch nicht das Ziel der Compiz- und Beryl-Entwickler. Die Neuerungen von Windows Vista und Mac OS X deuten darauf hin, dass gerade optischen Effekten eine strategische Bedeutung für ein Betriebssystem zukommt, zumal die 2D-Beschleunigung, auf die der konventionelle X-Desktop setzt, irgendwann aus der Grafikhardware verschwinden wird.
Deutlich anders präsentiert sich Metisse: Zwar ist das Verhalten der einzelnen Funktionen und Effekte nicht durchgehend konsistent und daher gewöhnungsbedürftig. Sind jedoch die Shortcuts und Tastatur-Maus-Kombinationen in Fleisch und Blut übergegangen, bietet Metisse eine sehr schnell und gut zu bedienende Arbeitsoberfläche. Ein großer Pluspunkt für Metisse ist der schonende Umgang mit den Ressourcen. Selten zeigte das Testsystem erhöhte CPU-Last.
|
Infos |
|---|
|
[1] Compiz: [http://compiz.org] [2] Beryl: [http://www.beryl-project.org] [3] Metisse-Quellpakete und Abhängigkeiten: [http://insitu.lri.fr/metisse/docs/building.html] [4] Matthias Hopf, “OpenGL-beschleunigter Desktop mit XGL und Compiz”: Linux-Magazin 05/06, S. 42 [5] Kevin Martin, “Composite Desktop mit AIGLX”: Linux-Magazin 05/06, S. 48 [6] Proprietärer Treiber von Nvidia:[http://www.nvidia.com/object/unix.html] [7] AIGLX-taugliche Grafikkarten: [http://fedoraproject.org/wiki/RenderingProject/aiglx] [8] XGL-taugliche Grafikkarten: [http://en.opensuse.org/XGL#Hardware_Advisory] [9 ] Proprietärer Treiber von ATI:[http://ati.amd.com/support/driver.html] |





