5 个版本
0.1.4 | 2020 年 1 月 24 日 |
---|---|
0.1.3 | 2020 年 1 月 24 日 |
0.1.2 | 2019 年 8 月 28 日 |
0.1.1 | 2019 年 8 月 27 日 |
0.1.0 | 2019 年 8 月 27 日 |
#652 in 图形 API
130KB
1.5K SLoC
swsurface
此包为 winit
提供软件渲染表面。
此包的目标是即使在通常假设可用的绘图 API(如 OpenGL¹)在目标环境中不可用时,也提供每个平台的最小绘图功能。当它们可用但因不可恢复的错误而失败时,此包也很有用。
¹ “Servo on Windows in VirtualBox gets 'NoAvailablePixelFormat'” servo/servo #9468
为此,此包仅在预条件不满足或处于会导致 winit 崩溃的非常病理情况下时才会 panic。
未实现的功能
- 部分更新 - 应用程序可以重新绘制一部分,但现在
swsurface
总是发送整个窗口 - 支持除 macOS、Windows、X11、Wayland 以外的平台
- X11:支持 24 位以外的颜色深度
- X11:透明度
- 多线程渲染(
Send
-ableSurface
) - 色彩管理 - 我们将尝试坚持使用 sRGB
许可证:MIT/Apache-2.0
依赖项
~2–11MB
~112K SLoC