Repolode
longbridge

longbridge/gpui-fast

Zed GPUI Rust UI 框架的性能优化分支,支持增量渲染与原生窗口合成。

Star
464
Fork
56
未关闭 Issue
2
最近提交
15小时前

这是什么?

GPUI Fast 是 Zed 编辑器中 GPUI Rust UI 框架的分支,从 Zed 单体仓库中抽离为独立工作区。它聚焦渲染性能:保留模式会追踪渲染依赖,帧与帧之间复用未变化的视图、布局节点和文本测量结果,而不是每次重建。

该分支还为滚动增加了 scroll layers,在 macOS、Linux 和 Windows 上滚动时复用已缓存的 GPU 瓦片和列表行。可选的窗口合成模式可以嵌入 WKWebView、WebView2 或 WebKitGTK 等原生内容,同时让 GPUI 的菜单、弹出层和对话框显示在其上方。

项目以 gpui-fast 和 gpui-fast-platform 的名称发布在 crates.io 上,目前仍处于实验阶段。

核心功能

  • 01保留模式在帧与帧之间复用未变化的视图、布局节点和文本测量结果。
  • 02滚动时复用缓存的 GPU 瓦片和列表行。
  • 03窗口合成可嵌入原生 Web 视图,同时 GPUI 浮层显示在其上方。
  • 04支持 macOS、Windows,以及 Linux 上的 Wayland 和 X11。
  • 05已发布到 crates.io,可通过依赖别名替代 gpui 包使用。

适用场景

  • 使用 Rust 开发桌面应用,希望在 GPUI 基础上降低每帧 CPU 开销。
  • 在 GPUI 窗口中嵌入原生 Web 视图,同时让 GPUI 对话框显示在其上方。
  • 评估增量渲染在大部分静态窗口或长列表滚动场景中的效果。

快速上手

  1. 1

    在 Cargo.toml 中添加已发布的 crate

  2. 2

    在 macOS、Windows 或 Linux 上运行原生 WebView 示例

    cargo run -p gpui_perf --example native_webview

使用前须知

  • 该项目仍处于实验阶段。
  • 在 Linux 上需要启用平台特性,不同平台会选择不同的后端。
  • 这是基于 Zed GPUI 修改的 Apache-2.0 分支。

收录于专题

标签

常见问题

gpui-fast 是什么?
Zed GPUI Rust UI 框架的性能优化分支,支持增量渲染与原生窗口合成。 GPUI Fast 是 Zed 编辑器中 GPUI Rust UI 框架的分支,从 Zed 单体仓库中抽离为独立工作区。它聚焦渲染性能:保留模式会追踪渲染依赖,帧与帧之间复用未变化的视图、布局节点和文本测量结果,而不是每次重建。
gpui-fast 可以免费使用吗?用的什么许可证?
gpui-fast 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
gpui-fast 还在维护吗?
活跃维护中。gpui-fast 最近一次提交是在 2026年11月7日。
gpui-fast 适合用来做什么?
使用 Rust 开发桌面应用,希望在 GPUI 基础上降低每帧 CPU 开销。 在 GPUI 窗口中嵌入原生 Web 视图,同时让 GPUI 对话框显示在其上方。 评估增量渲染在大部分静态窗口或长列表滚动场景中的效果。
gpui-fast 怎么安装和运行?
在 Cargo.toml 中添加已发布的 crate 在 macOS、Windows 或 Linux 上运行原生 WebView 示例: cargo run -p gpui_perf --example native_webview
在哪里获取 gpui-fast?
源代码和安装说明在 GitHub 上:https://github.com/longbridge/gpui-fast

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目