Mit Xrdesktop will Collabora den Linux-Desktop fit für die Interaktion und Betrachtung mit Extended-Reality-Geräten (VR, AR oder MR) machen.
Valve sponsert das neue Projekt des britischen Linux-Spezialisten. Xrdesktop verspricht XR-Nutzern Interaktionen mit traditionellen Desktops wie Gnome und KDE. Dank der neuen Bibliothek bemerken Window Manager, wenn ein Linux-Nutzer zum Beispiel ein HMD (Head-mounted Display) an den Rechner stöpselt und rendern den Desktop in einer für dieses geeigneten 3D-VR-Umgebung. Diese lässt sich mit VR-Controllern bedienen und reagiert auf damit generierte Maus- und Tastatur-Events.
Wie der begleitende Blogpost erklärt, gab es in der Vergangenheit bereits verschiedene Ansätze für VR-Desktops, darunter Ibex, Motorcar und Safespaces. Anders als diese soll Xrdesktop keinen dedizierten Compositor brauchen, sondern sich in bestehende Desktops integrieren. Starten will das Projekt mit Gnome und KDE.
Vom Direct Mode zum VR-Desktop
Xrdesktop fußt unter anderem auf Bemühungen von Keith Packard, der für X11 eine “non-desktop”-Eigenschaft eingeführt hat, um VR-Inhalte anzuzeigen. Die Vulkan-Erweiterung “VK_EXT_acquire_xlib_display” soll es VR-Compositoren ermöglichen, direkt in HMDs zu rendern. Eine ähnliche Erweiterung wird gerade für Wayland entwickelt und in den Grafikstack implementiert. Dank dieser ersten Bemühungen, wurde der Desktop für VR nicht mehr erweitert, sondern ließen sich HMDs entdecken und im “Direct Mode” verwenden, etwa in Steam VR und Monado. Allerdings tauchten dafür die Desktops nicht mehr in den XR-Geräten auf.
Collabora will für Xrdesktop Compiz-artige Plugins für Kwin (KDE) und Gnome Shell verwenden. Xrdesktop soll dabei Fenster in den VR-Desktop spiegeln und Desktop-Eingaben in XR-Aktionen übersetzen. Xrdesktop soll dabei sowohl in der Lage sein, explizit VR-Umgebungen abzuholen, bringt aber auch einen Overlay-Modus mit, um Fenster über laufenden VR-Darstellungen einzublenden.
Technische Details
Die technischen Details für Xrdesktop liefert der Blogpost auch gleich mit. Xrdesktop soll demnach aus einem Set von Glib-basierten Bibliotheken bestehen. Die bereiten Fenster-Texturen über Open-VR-Overlays für die VR-Laufzeit auf, um diese Fenster über VR-Anwendungen anzuzeigen. Für die komplette “Desktop Experience” will das Projekt dann einen eigenen Vulkan-Renderer einsetzen. Dabei braucht Xrdesktop keinen eigenen Window Manager, sondern lässt sich in existierende implementieren und etwa auf X11 und Wayland portieren.

Verschiedene Komponenten sollen zusammenspielen, um VR-Brillen mit Gnome und KDE sowie weiteren Desktops zu verwenden. (Quelle: Collabora.com)
Die am Prozess beteiligten Komponenten zeigt die Abbildung, der Blogeintrag erläutert ihre Funktionen. Er liefert zudem mehrere Videos zu den möglichen Benutzerinteraktionen mit Xrdesktop sowie eine Roadmap, die Ziele des Projekts skizziert.




