16 个版本 (5 个重大更新)

0.6.1 2024 年 8 月 14 日
0.6.0 2024 年 8 月 9 日
0.5.1 2024 年 7 月 16 日
0.4.2 2024 年 5 月 26 日
0.1.0 2024 年 3 月 26 日

#70图形 API

Download history 308/week @ 2024-04-27 221/week @ 2024-05-04 159/week @ 2024-05-11 224/week @ 2024-05-18 362/week @ 2024-05-25 45/week @ 2024-06-01 40/week @ 2024-06-08 15/week @ 2024-06-15 16/week @ 2024-06-22 19/week @ 2024-06-29 205/week @ 2024-07-06 128/week @ 2024-07-13 26/week @ 2024-07-20 43/week @ 2024-07-27 104/week @ 2024-08-03 185/week @ 2024-08-10

每月 369 次下载

(MIT OR Apache-2.0) AND OFL-1.1

125KB
3K SLoC

Bevy Vello

Bevy 游戏引擎 使用 Vello 的矢量图形渲染集成。

Linebender Zulip MIT/Apache 2.0 Vello Following released Bevy versions
Dependency status Crates.io Docs Build status

bevy_vello 是一个跨平台的、以 2D 计算为中心的矢量图形渲染库,用于 Bevy。默认支持渲染文本和场景,还提供了可选的 SVG 和 Lottie 支持。即将提供对 dotLottie 的实验性支持。

运行演示的快速入门

cargo run -p demo

Alt text

支持的 Bevy 版本

bevy bevy_vello
0.14 0.5-0.6, main
0.13 0.1-0.4
< 0.13 不受支持

Cargo 功能

[!WARNING] SVG 和 Lottie 的支持有限。如果有与 SVG 相关的问题,请在此处提交问题: vello_svg。如果有与 Lottie 相关的问题,请在此处提交问题: velato。请查阅相应的后端以获取更多信息。

Cargo 功能 描述 默认吗?
default_font 包含仅包含 ASCII 字符的默认字体,代价是 20KB 的二进制大小增加
svg 使用 vello_svg 渲染 .svg 文件
lottie 使用 velato 渲染 .json Lottie 文件
实验性-dotLottie 渲染 .lottie Lottie 文件。 开发中

示例

跨平台(Bevy)

cargo run -p <demo name>

Web 平台

由于 Vello 严重依赖于计算着色器,我们依赖新兴的 WebGPU 标准在网络上运行。在浏览器支持变得普遍之前,可能需要使用开发版浏览器(例如 Chrome Canary)并显式启用 WebGPU。

这使用 cargo-run-wasm 为 Web 构建示例,并为它托管本地服务器

# Make sure the Rust toolchain supports the wasm32 target
rustup target add wasm32-unknown-unknown

# The binary name must also be explicitly provided as it differs from the package name
cargo run_wasm -p text

在支持的 Web 浏览器上,这里也有一个网络演示 (可在此处访问)

[!警告] 目前网络不是 Vello 的主要目标,并且 WebGPU 实现不完整,因此您在运行此示例时可能会遇到问题。

社区

Vello 的开发讨论发生在 Linebender Zulip,特别是 #gpu 流。所有公开内容都可以登录阅读。

欢迎通过拉取请求进行贡献。适用 Rust 行为准则

许可

根据以下之一进行许可

任选其一

examples/assets 目录下的文件仅在其各自的许可下进行许可,可在其目录中的 LICENSE 文件中找到。

贡献

除非您明确声明,否则根据 Apache-2.0 许可证定义,您提交给工作以包含在内的任何贡献,将根据上述方式双许可,没有任何附加条款或条件。

依赖项

~48–87MB
~1.5M SLoC