I sviluppori di u prughjettu Cuarzo OS prisentatu a prima versione di a biblioteca di u Louvre, chì furnisce cumpunenti per u sviluppu di servitori cumposti basatu nantu à u protocolu Wayland. U codice hè scrittu in C++ è distribuitu sottu a licenza GPLv3.
A biblioteca si cura di tutte l'operazioni di livellu bassu, cumpresa a gestione di buffer di grafica, interagisce cù i sottosistemi di input è l'API grafiche in Linux, è offre ancu implementazioni pronti di diverse estensioni di u protocolu Wayland. A prisenza di cumpunenti ready-made permette micca di passà mesi di travagliu nantu à a creazione di elementi standard di livellu bassu, ma per riceve immediatamente un framework di servitore compostu prontu è di travagliu, chì pò esse adattatu à i vostri bisogni è cumplementatu cù i necessarii. funziunalità allargata. Se necessariu, u sviluppatore pò annullà i metudi furniti da a biblioteca per trattà i protokolli, l'eventi di input, è l'avvenimenti di rendering.
Sicondu i sviluppatori, a biblioteca hè notevolmente superiore in u rendiment à e soluzioni cuncurrenti. Per esempiu, un esempiu di un servore cumpostu, louvre-weston-clone, scrittu cù Louvre, chì ripruduce a funziunalità di u prughjettu Weston, in paragunà cù Weston è Sway, cunsuma menu CPU è risorse GPU in i testi, è permette ancu voi. per ottene un FPS constantemente altu, ancu in scenarii cumplessi.
Caratteristiche principali di u Louvre:
- Supportu per cunfigurazioni multi-GPU (Multi-GPU).
- Supporta più sessioni d'utilizatori (Multi-Session, TTY switching).
- Un sistema di rendering chì sustene i metudi basati nantu à u rendering 2D (LPainter), Scenes è Viste.
- Capacità di utilizà i vostri propri shaders è prugrammi OpenGL ES 2.0.
- Ridisegnu automaticu realizatu cum'è necessariu (solu quandu u cuntenutu di l'area cambia).
- U travagliu multi-threaded, chì vi permette di ottene un FPS elevatu cù v-sync attivatu ancu quandu rende scenarii cumplessi (l'implementazioni di un filu unicu anu prublemi à mantene un FPS altu per via di frames mancanti chì ùn ponu esse processati per via di ritardi chì aspettanu a sincronizazione cù l'impulsu di blanking di quadru. (vblank).
- Supporta u buffering unicu, doppiu è triplu.
- Implementazione di un clipboard per i dati di testu.
- Supportu Wayland è estensioni:
- XDG Shell hè una interfaccia per creà è interagisce cù superfici cum'è Windows, chì vi permette di trasfurmà in u screnu, minimizzà, espansione, resize, etc.
- Decorazione XDG - rende decorazioni di a finestra da u latu di u servitore.
- Tempu di presentazione - furnisce a visualizazione di video.
- Linux DMA-Buf - spartera di parechje carte video cù a tecnulugia dma-buf.
- Supporta u travagliu in ambienti basati nantu à i driver Intel (i915), AMD (amdgpu) è NVIDIA (driver propiu o nouveau).
- Funzioni micca ancu implementate (in a lista di i piani):
- Touch Events - gestione di l'avvenimenti touch screen.
- Gesti di puntatore - cuntrolli di u touch screen.
- Viewporter - Permette à u cliente di realizà a scala di u latu di u servitore è a tagliata di i bordi di a superficia.
- Trasfurmà l'uggetti LView.
- XWayland - lanciazione di applicazioni X11.
Source: opennet.ru