Louvre 1.0, une bibliothèque de développement de serveurs composites basée sur Wayland, est disponible

Les développeurs du projet Cuarzo OS ont présenté la première version de la bibliothèque Louvre, qui fournit des composants pour le développement de serveurs composites basés sur le protocole Wayland. Le code est écrit en C++ et distribué sous licence GPLv3.

La bibliothèque prend en charge toutes les opérations de bas niveau, y compris la gestion des tampons graphiques, l'interaction avec les sous-systèmes d'entrée et les API graphiques sous Linux, et propose également des implémentations prêtes à l'emploi de diverses extensions du protocole Wayland. La présence de composants prêts à l'emploi permet de ne pas passer des mois de travail sur la création d'éléments standards de bas niveau, mais de recevoir immédiatement un framework de serveur composite prêt à l'emploi et fonctionnel, qui peut être adapté à vos besoins et complété par le nécessaire. fonctionnalité étendue. Si nécessaire, le développeur peut remplacer les méthodes fournies par la bibliothèque pour gérer les protocoles, les événements d'entrée et les événements de rendu.

Selon les développeurs, la bibliothèque est nettement supérieure en termes de performances aux solutions concurrentes. Par exemple, un exemple de serveur composite, louvre-weston-clone, écrit avec Louvre, qui reproduit les fonctionnalités du projet Weston, par rapport à Weston et Sway, consomme moins de ressources CPU et GPU dans les tests, et permet également pour obtenir des FPS constamment élevés, même dans des scénarios complexes.

Louvre 1.0, une bibliothèque de développement de serveurs composites basée sur Wayland, est disponible

Principales caractéristiques du Louvre :

  • Prise en charge des configurations multi-GPU (Multi-GPU).
  • Prend en charge plusieurs sessions utilisateur (multi-session, commutation TTY).
  • Un système de rendu qui prend en charge les méthodes basées sur le rendu 2D (LPainter), les scènes et les vues.
  • Possibilité d'utiliser vos propres shaders et programmes OpenGL ES 2.0.
  • Redessin automatique effectué selon les besoins (uniquement lorsque le contenu de la zone change).
  • Travail multithread, vous permettant d'obtenir des FPS élevés avec v-sync activé même lors du rendu de scénarios complexes (les implémentations monothread ont des problèmes pour maintenir des FPS élevés en raison de trames manquantes qui ne peuvent pas être traitées en raison de retards d'attente pour la synchronisation avec l'impulsion de suppression de trame (vblanc).
  • Prend en charge la mise en mémoire tampon simple, double et triple.
  • Implémentation d'un presse-papiers pour les données texte.
  • Prise en charge de Wayland et des extensions :
    • XDG Shell est une interface pour créer et interagir avec des surfaces sous forme de fenêtres, qui vous permet de les déplacer sur l'écran, de les minimiser, de les agrandir, de les redimensionner, etc.
    • XDG Decoration - rendu des décorations de fenêtres côté serveur.
    • Heure de présentation - fournit un affichage vidéo.
    • Linux DMA-Buf - partage de plusieurs cartes vidéo utilisant la technologie dma-buf.
  • Prend en charge le travail dans des environnements basés sur les pilotes Intel (i915), AMD (amdgpu) et NVIDIA (pilote propriétaire ou nouveau).
  • Fonctionnalités non encore implémentées (dans la liste des plans) :
    • Événements tactiles - gestion des événements de l'écran tactile.
    • Gestes du pointeur - commandes de l'écran tactile.
    • Viewporter - Permet au client d'effectuer une mise à l'échelle et un découpage côté serveur des bords de surface.
    • Transformation d'objets LView.
    • XWayland - lancement des applications X11.

Louvre 1.0, une bibliothèque de développement de serveurs composites basée sur Wayland, est disponible
Louvre 1.0, une bibliothèque de développement de serveurs composites basée sur Wayland, est disponible


Source: opennet.ru

Ajouter un commentaire