Доступен выпуск библиотеки Louvre 1.2.0, предоставляющей компоненты для разработки композитных серверов на базе протокола Wayland. Библиотека берёт на себя выполнение всех низкоуровневых операций, включая управления графическими буферами, взаимодействие с подсистемами ввода и графическими API в Linux, и также предлагает готовые реализации различных расширений протокола Wayland. Созданный на базе Louvre композитный сервер, потребляет заметно меньше ресурсов и демонстрирует более высокую производительность, по сравнению с Weston и Sway. Код написан на языке С++ и распространяется под лицензией GPLv3. Обзор возможностей Louvre можно прочитать в анонсе первого выпуска проекта.
В новой версии:
- Добавлена поддержка выставлении нецелых значений масштаба (fractional scale) и пересэмплирования (oversampling) для снижения артефактов от сглаживания при увеличении масштаба. Для дробного масштабирования задействован Wayland-протокол fractional-scale.
- При помощи протокола tearing-control реализована возможность отключения вертикальной синхронизации (VSync) с кадровым гасящим импульсом, применяемой для защиты от появления разрывов при выводе (tearing) в полноэкранных приложениях. В мультимедийных приложениях появление артефактов из-за разрывов является нежелательным эффектом, но в игровых программах с артефактами можно смириться, если борьба с ними приводит к дополнительным задержкам.
- Добавлена поддержка гамма-коррекции с использованием Wayland-протокола wlr-gamma-control.
- Добавлена поддержка Wayland-протокола «viewporter«, который позволяет клиенту выполнять действия по масштабированию и обрезанию краёв поверхности на стороне сервера.
- В класс LPainter добавлены методы для отрисовки областей текстур с высокой точностью и применением трансформаций.
- В классе LTextureView реализована поддержка исходных прямоугольников («source rect», прямоугольная область для отображения) и трансформаций.
- Добавлен класс LBitset для снижения потребления памяти при хранении флагов и состояний.
Источник: http://www.opennet.ru/opennews/art.shtml?num=60606