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
每月 369 次下载
125KB
3K SLoC
bevy_vello
是一个跨平台的、以 2D 计算为中心的矢量图形渲染库,用于 Bevy。默认支持渲染文本和场景,还提供了可选的 SVG 和 Lottie 支持。即将提供对 dotLottie 的实验性支持。
运行演示的快速入门
cargo run -p demo
支持的 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 行为准则。
许可
根据以下之一进行许可
- Apache License,版本 2.0 (LICENSE-APACHE 或 https://apache.ac.cn/licenses/LICENSE-2.0)
- MIT 许可证 (LICENSE-MIT 或 http://opensource.org/licenses/MIT)
任选其一
examples/assets
目录下的文件仅在其各自的许可下进行许可,可在其目录中的 LICENSE
文件中找到。
贡献
除非您明确声明,否则根据 Apache-2.0 许可证定义,您提交给工作以包含在内的任何贡献,将根据上述方式双许可,没有任何附加条款或条件。
依赖项
~48–87MB
~1.5M SLoC