#wayland #egl #opengl

wayrs-egl

wayrs-client 的 EGL 实现

8 个版本 (4 个重大更新)

0.5.0 2023 年 12 月 13 日
0.4.0 2023 年 12 月 9 日
0.3.1 2023 年 11 月 25 日
0.3.0 2023 年 8 月 29 日
0.1.1 2023 年 7 月 24 日

图形 API 中排名第 375

每月下载量 45

MIT 许可

280KB
2K SLoC

wayrs

Wayland 客户端库的简单 Rust 实现。

设计决策

  • 单事件队列
  • 没有内部可变性
  • 没有与 libwayland 的兼容性
  • 支持阻塞、非阻塞和异步 IO

项目结构

项目分为多个 crates

  • wayrs-client:主 crate,实现 Wayland 线协议。提供表示打开的 Wayland 套接字的 Connection 类型。
  • wayrs-scanner:提供 generate! 宏,可以从 .xml 文件生成粘合代码。核心协议的生成代码已包含在 wayrs-client 中。重新导出为 wayrs_client::scanner
  • wayrs-protocols:用于与 wayrs-client 一起使用的 Wayland 协议集合。
  • wayrs-utils:用于 wayrs-client 的实用工具和抽象集合。包括共享内存分配器等。
  • wayrs-egl:将 OpenGL(-ES) 带到 wayrs。基于 EGL_KHR_platform_gbm

使用 wayrs 的项目

以下项目使用 wayrs,可作为额外使用示例

MSRV

1.67

依赖项

~3.5MB
~66K SLoC