Schwingende Fenster: Neue Optik für Linux & Co.
Die für die durchsichtigen Operationen nötigen XRender-Funktionen sind bisher jedoch bei kaum einem X11-Treiber hardwarebeschleunigt implementiert. Da die Darstellung so oft mit nur einem Bild pro Sekunde deutlich zu träge wird, finden diese Funktionen noch keinen breiten Einsatz. Lediglich der Binärtreiber von Nvidia sowie experimentelle X-Server, die auf Keith Packards Kdrive-Architektur basieren, bieten hinreichende Beschleunigung. Allerdings gab es für die XRender-Software-Implementierung vor ein paar Tagen einige Modifikationen von Trolltech, welche die sehr langsame Implementierung je nach Anwendungsfall drei- bis achtmal beschleunigen.
Das Problem hierbei ist, in allen Treibern ausreichende 2D-XRender-Hardwarebeschleunigung zu implementieren – die eigentlich einfach nur ein Sonderfall der existierenden 3D-Beschleunigung darstellt.
Für die Ausgabe verwendet die Software dabei die aus dem Cairo-Projekt hervorgegangene OpenGL-Bibliothek Glitz, die wie Xgl ebenfalls von David Reveman geleitet wird.
Xgl (DivX-Video; 1 MByte) verwendet dabei den bereits laufenden X-Server für die OpenGL-Ausgabe – muss also zusätzlich gestartet werden. Zwei X-Server sind natürlich im produktiven Betrieb unerwünscht und die X-Entwickler beschäftigen sich daher mit der Implementierung des OpenGL-Standards für Embedded-Systeme(öffnet im neuen Fenster), um zukünftig hardwarebeschleunigte 3D-Grafik ohne X als Grundlage für OpenGL-X-Server zu verwenden. Gleichzeitig eröffnet dieser Schritt auch neue Möglichkeiten im Einsatz von freien Betriebssystemen für Embedded-Systeme mit anspruchsvollen Visualisierungsaufgaben.
Die Nutzung von 3D-Treibern für zukünftige Oberflächen kann sich aber zugleich als geschickter Schachzug erweisen, die Entwicklung der freien 3D-Treiber zu beschleunigen sowie die Hardware-Hersteller bei Linux-Support zu guten 3D-Treibern zu zwingen.
Sowohl Xgl als auch Luminocity sind derzeit nur direkt aus dem CVS zu beziehen und benötigen relativ viele Einzelpakete aus dem modularisierten X-Projekt(öffnet im neuen Fenster).
Sun bietet mit "Looking Glas" ebenfalls einen 3D-Desktop, der – teils in Java geschrieben – auf derselben seit X.org 6.8 vorhandenen Composite-Erweiterung aufbaut.
In der Version 17 wurde mit Evas eine eigene Rendering-Engine mit Subpixel-Rendering und Transparenz implementiert, die im Normalfall via OpenGL-Hardware beschleunigt wird. Im Gegensatz zu Xrender bietet Evas aber eine sehr schnelle Software-Implementierung, die auch auf Embedded-Systemen verwendet werden kann. Da man auf bisherige X-Server aufsetzt, kümmert sich auch die Version 17 nicht um transparente oder transformierte Fenster, sondern bietet mit Evas und vielen anderen Support-Bibliotheken ein Framework für die Gestaltung von Applikationen.
Ausgefallen ist die Art, wie das Aussehen und Verhalten der Oberfläche beeinflusst wird: Die grafischen Elemente werden in einem ZIP-ähnlichen Container gruppiert und können in der C-ähnlichen Skriptsprache Embryo – eine Variante von Small(öffnet im neuen Fenster) – geschriebene Anweisungen enthalten und so dynamisch das Look-and-Feel steuern.
So lässt sich etwa die Lampe des Docks am Mauszeiger einblenden, die blinkenden Lauflichter zum Vergrößern der Elemente zeichnen oder im Foto-Betrachter das Einblenden der Bedienelemente realisieren. Die Enlightenment-Webseite sieht es gar als das Äquivalent zu Shockwave bzw. Flash.
Video-Downloads:
- Xgl (DivX; 1 MByte)
- Luminocity #1 (DivX; 2,5 MByte)
- Luminocity #2 (DivX; 4 MByte)
- Enlightenment 17 #1 (DivX; 1,8 MByte)
- Enlightenment 17 #2 (DivX; 1,2 MByte)
Die Videos entstanden auf einem Athlon-XP 2500+ mit einer nicht ganz aktuellen Radeon 7500. Ohne die parallel laufende Videoaufzeichnung liefen die Animationen absolut flüssig. Dabei lief das System unter dem System Development Environment T2(öffnet im neuen Fenster), das die rund 23 notwendigen X-Pakete bereits enthält. [von René Rebe]
- Anzeige Hier geht es zu Linux: Das umfassende Handbuch bei Amazon Wenn Sie auf diesen Link klicken und darüber einkaufen, erhält Golem eine kleine Provision. Dies ändert nichts am Preis der Artikel.