Wxrd, un serveur composite basé sur Wayland pour les systèmes de réalité virtuelle

Récemment Collabora a dévoilé le serveur composite wxrd, qui est implémenté sur la base du protocole Wayland et conçu pour former un bureau basé sur des composants xrdesktop dans des environnements de réalité virtuelle XNUMXD.

Comme base, la bibliothèque wlroots, développée par les développeurs de l'environnement utilisateur Sway, et le serveur composite wxrc, conçu pour être utilisé dans les systèmes de réalité virtuelle, sont utilisés.

Contrairement à la solution initialement proposée dans xrdesktop, wxrd propose un serveur composite spécialisé pour les environnements de réalité virtuelle, au lieu d'adapter les gestionnaires de fenêtres et de skins bureaux existants pour les systèmes de réalité virtuelle (le projet xrdesktop fournit des correctifs distincts pour kwin et GNOME Shell, qui nécessitent une adaptation pour chaque nouvelle version de ces composants).

L'utilisation de wxrd vous permet non seulement de refléter le contenu d'un bureau existant en deux dimensions, en même temps qu'il est affiché sur un moniteur normal, mais aussi de gérer séparément les fenêtres lancées spécialement pour un bureau en trois dimensions (c'est-à-dire non pour permettre l'accès d'un casque VR au bureau utilisé dans le système actuel) et forme un environnement distinct pour le casque de réalité virtuelle).

Contrairement à des projets similaires comme Simula VR, Stardust, Motorcar et Safespaces, le serveur composite wxrd est construit en tenant compte d'un minimum de dépendances et de consommation de ressources. Wxrd permet également de travailler non seulement avec des applications basées sur le protocole Wayland et permet d'exécuter des applications X11 à l'aide du serveur xwayland DDX.

Depuis que l'extension du protocole Wayland pour les claviers virtuels est en cours de développement, entrée de données dans wxrd est implémenté via un système d'émulation de clavier qui transfère tous les caractères Unicode, y compris les emoji, à partir du clavier virtuel fourni dans xrdesktop.

wxrd nécessite une carte vidéo prenant en charge l'API graphique Vulkan et l'extension VK_EXT_image_drm_format_modifier, Compatible avec Mesa à partir de la version 21.1 (inclus avec Ubuntu 21.04). L'utilisation de l'API Vulkan pour le rendu nécessite l'extension VK_EXT_physical_device_drm, qui a été introduite dans Mesa 21.2 (Ubuntu 21.10).

Des avantages d'utiliser un serveur composite séparé pour les systèmes de réalité virtuelle au lieu de s'intégrer aux gestionnaires de fenêtres 2D utilisés pour afficher un bureau traditionnel :

  • Lorsqu'elle est connectée à une session Wayland ou X11, la bibliothèque wlroots ouvre une fenêtre dans laquelle vous pouvez facilement capturer les événements d'entrée au clavier et de souris et rediriger cette entrée vers une fenêtre spécifique dans un environnement de réalité virtuelle. À l'avenir, ils prévoient de saisir cette opportunité pour organiser la saisie non seulement via un contrôleur de réalité virtuelle, mais également via un clavier et une souris conventionnels.
  • Les fenêtres ne sont pas limitées par les bords d'un bureau 2D et peuvent être dimensionnées de manière arbitraire, limitées uniquement par la taille de texture maximale prise en charge par le matériel.
  • Le rendu Windows dans wxrd est effectué avec le taux de rafraîchissement natif du casque 3D (HMD), tandis que la mise en miroir de fenêtres normale du gestionnaire de fenêtres utilise le taux de rafraîchissement utilisé pour rafraîchir les informations sur un moniteur fixe.
  • Le rendu des polices peut se faire en tenant compte de la densité de pixels du casque 3D, sans référence à la densité de pixels d'un moniteur fixe.
  • Il est possible d'utiliser wxrd sur des systèmes qui n'ont qu'un casque 3D et n'ont pas de moniteur régulier.

Alors que les inconvénients d'un serveur composite séparé pour la réalité virtuelle :

  • Dans un environnement de réalité virtuelle, seules les applications spécialement publiées pour un serveur composite distinct sont affichées, sans possibilité de transférer ou de mettre en miroir des fenêtres déjà ouvertes sur le bureau traditionnel vers l'environnement de réalité virtuelle (c'est-à-dire de continuer à travailler avec applications ouvertes dans un environnement de réalité virtuelle) écran normal, vous devrez redémarrer dans un environnement séparé pour le casque 3D).
  • La prise en charge de Wayland peut être limitée dans les implémentations de l'API Vulkan. Par exemple, gbm et wlroots ne peuvent pas être utilisés avec des pilotes NVIDIA propriétaires en raison du manque de prise en charge de l'extension VK_EXT_drm_format_modifier.

source: https://www.collabora.com


Soyez le premier à commenter

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont marqués avec *

*

*

  1. Responsable des données : AB Internet Networks 2008 SL
  2. Finalité des données: Contrôle du SPAM, gestion des commentaires.
  3. Légitimation: votre consentement
  4. Communication des données: Les données ne seront pas communiquées à des tiers sauf obligation légale.
  5. Stockage des données: base de données hébergée par Occentus Networks (EU)
  6. Droits: à tout moment, vous pouvez limiter, récupérer et supprimer vos informations.