基于 Wayland 开发复合服务器的库 Louvre 1.0 上线

Cuarzo OS 项目的开发人员推出了 Louvre 库的第一个版本,该库为基于 Wayland 协议的复合服务器的开发提供了组件。 该代码是用 C++ 编写的,并根据 GPLv3 许可证分发。

该库负责所有低级操作,包括管理图形缓冲区、与 Linux 中的输入子系统和图形 API 交互,并且还提供 Wayland 协议的各种扩展的现成实现。 现成组件的存在使得不必花费数月的时间来创建标准的低级元素,而是可以立即收到现成的且可工作的复合服务器框架,该框架可以适应您的需求并补充必要的功能扩展功能。 如果需要,开发人员可以重写库提供的方法来处理协议、输入事件和渲染事件。

据开发人员称,该库的性能明显优于竞争解决方案。 例如,使用Louvre编写的复合服务器的示例louvre-weston-clone,它重现了Weston项目的功能,与Weston和Sway相比,在测试中消耗的CPU和GPU资源更少,并且还允许您即使在复杂的场景中,也能实现始终如一的高 FPS。

基于 Wayland 开发复合服务器的库 Louvre 1.0 上线

卢浮宫的主要特点:

  • 支持多 GPU 配置(Multi-GPU)。
  • 支持多个用户会话(多会话、TTY 切换)。
  • 支持基于 2D 渲染 (LPainter)、场景和视图的方法的渲染系统。
  • 能够使用您自己的着色器和 OpenGL ES 2.0 程序。
  • 根据需要自动重绘(仅当区域内容发生变化时)。
  • 多线程工作,即使在渲染复杂场景时,也可以在启用垂直同步的情况下实现高 FPS(单线程实现存在由于等待与帧消隐脉冲同步而导致无法处理的帧丢失而无法处理的问题) (v空白)。
  • 支持单缓冲、双缓冲和三缓冲。
  • 文本数据剪贴板的实现。
  • Wayland 和扩展支持:
    • XDG Shell 是一个用于创建表面并与窗口交互的界面,它允许您在屏幕上移动它们、最小化、扩展、调整大小等。
    • XDG Decoration - 在服务器端渲染窗口装饰。
    • 演示时间 - 提供视频显示。
    • Linux DMA-Buf - 使用 dma-buf 技术共享多个显卡。
  • 支持在基于 Intel (i915)、AMD (amdgpu) 和 NVIDIA 驱动程序(专有驱动程序或 nouveau)的环境中工作。
  • 尚未实现的功能(在计划列表中):
    • 触摸事件 - 处理触摸屏事件。
    • 指针手势 - 触摸屏控制。
    • Viewporter - 允许客户端执行服务器端缩放和修剪表面边缘。
    • 转换 LView 对象。
    • XWayland - 启动 X11 应用程序。

基于 Wayland 开发复合服务器的库 Louvre 1.0 上线
基于 Wayland 开发复合服务器的库 Louvre 1.0 上线


来源: opennet.ru

添加评论