Bevy 六周年
摘要
Bevy 创始人对引擎六周年的回顾,重点提及 Bevy 0.17 和 0.18 版本发布、新的指标系统、周边商店和社区 Jam 等里程碑,并展望未来一年。
<p><a href="https://lobste.rs/s/oppmip/bevy_s_sixth_birthday">评论</a></p>
查看缓存全文
缓存时间: 2026/08/11 09:09
# Bevy 六周年生日
来源:https://bevy.org/news/bevys-sixth-birthday/
嘿 @carthere(Bevy 的创建者和项目负责人)。说出来真有点疯狂,但 Bevy 现在已经*六岁*了!按照传统,我会借此机会回顾过去的一年,并表达我们对未来的希望与梦想。如果你感兴趣,可以看看 Bevy 的[一周年](https://bevy.org/news/bevys-first-birthday)、[二周年](https://bevy.org/news/bevys-second-birthday)、[三周年](https://bevy.org/news/bevys-third-birthday/)、[四周年](https://bevy.org/news/bevys-fourth-birthday/)和[五周年](https://bevy.org/news/bevys-fifth-birthday/)生日文章。我非常鼓励 Bevy 开发者和社区成员撰写自己的 **Bevy 六周年**回顾文章。只需把文章发布到某个地方(如果你想的话,也可以发到社交媒体上),然后[在这里链接](https://github.com/bevyengine/bevy-website/issues/2563)。一个月后,我们会汇总这些内容,发布一篇“回顾 Bevy 的第六年”整合文章。这是我们作为社区庆祝胜利、发现改进空间、校准未来一年方向的机会。
对于那些还不了解的人,Bevy 是一个用 Rust 构建的、清新简单的数据驱动游戏引擎和应用框架。Bevy 也是永远免费开源的!你可以在 GitHub 上获取完整的[源代码](https://github.com/bevyengine/bevy)。我们有[快速入门指南](https://bevy.org/learn/quick-start/introduction)。你还可以查看 [Bevy Assets](https://bevy.org/assets/) 获取由社区开发的插件、crate、游戏和学习资源库。这一切都得益于 Bevy 基金会[慷慨的捐赠者](https://bevy.org/donate)。如果你喜欢 Bevy,*请*考虑[支持我们的工作](https://bevy.org/donate)!每一笔捐款都直接用于改善 Bevy 并让所有人受益,而且相对于我们的雄心壮志,我们的资金*严重*不足。
## 里程碑之年
[#](https://bevy.org/news/bevys-sixth-birthday/#a-year-of-milestones) milestones
- **8 月 25 日**:[Bevy 周边商店](https://www.bonfire.com/store/bevy-merch/)——我们上线了新的 Bevy 周边商店,让 Bevy 开发者可以表达他们的支持。请注意,每笔销售我们只赚 3 美元……这家商店的主要目的是让人们能在现实生活中展示 Bevy,而不是作为资金来源。
- **9 月 30 日**:[Bevy 0.17](https://bevy.org/news/bevy-0-17/)——我们发布了 Solari / 光线追踪光照、改进的 Observers / Events、核心 Bevy UI Widgets、Bevy Feathers、Rust 热补丁、光照纹理、DLSS、Tilemap 分块渲染、Web 托管资源加载、Reflect 自动注册、帧耗时图、UI 渐变、光线步进大气、虚拟几何、BVH 剔除等等!
- **12 月 10 日**:[Bevy Metrics](https://metrics.bevy.org/)——感谢我们[慷慨的捐赠者](https://bevy.org/donate)和 [François](https://github.com/mockersf) 的努力,我们上线了一套自动化指标系统,它会在每次 Bevy 提交时运行,持续跟踪 Bevy 的运行时性能、编译时间和二进制体积。这帮助我们捕获了大量回归问题,也将是我们未来关键的基础设施之一。
- **1 月 13 日**:[Bevy 0.18](https://bevy.org/news/bevy-0-18/)——我们发布了大气遮挡与 PBR 着色、广义大气散射介质、Solari 改进、PBR 着色修复、字体变体、自动方向导航、全屏材质、Cargo Feature 集合、第一方相机控制器等等!
- **2 月 7 日**:[Bevy Jam #7](https://itch.io/jam/bevy-jam-7)——第七届官方 Bevy 游戏 jam!310 人参加,64 人提交了游戏,人们留下了 1,331 条评分。主题是“Extremely Incohesive Fever Dream”,参与者们确实把这个主题发挥到了极致。那款令人愉悦地混乱(又出奇地完整)的 [PvF](https://kaiva-morphin.itch.io/pacmodillo-versunaro-fazberino) 获胜了。你应该去看看!
- **4 月 1 日**:[Bavy Jam #1](https://itch.io/jam/bavy-jam-1)——为了庆祝愚人节,我们举办了第一届*Bavy* Jam,没有任何预告,时长 24 小时,目的是在 BSN 发布前对其进行测试。开发者们必须使用 Bevy 的 main 分支来构建一些老鼠主题的东西 :)
- **6 月**:Bevy 在 crates.io 上的下载量达到 6,000,000 次!
- **6 月 19 日**:[Bevy 0.19](https://bevy.org/news/bevy-0-19/)——我们发布了下一代场景/BSN、更快地渲染更大场景、接触阴影、更多 Feathers Widgets、文本输入、更丰富的文本、应用设置、后处理特效、改进的蒙皮网格剔除等等!
- **8 月 10 日**:Bevy 现在六岁了!
## 数据中的一年
[#](https://bevy.org/news/bevys-sixth-birthday/#a-year-by-the-numbers) numbers
- **1,527** 位 [GitHub](https://github.com/bevyengine) 上的独立 Bevy 贡献者(去年为 1,291)
- **47,529** 个 [GitHub](https://github.com/bevyengine) 星标(去年为 40,900)
- **5,189** 个 [GitHub](https://github.com/bevyengine) fork(去年为 4,429)
- **16,415** 个 pull request(12,501 个已合并)在 [GitHub](https://github.com/bevyengine) 上(去年为 12,928 个 PR 和 9,795 个已合并)
- **9,348** 个 issue(6,373 个已关闭)在 [GitHub](https://github.com/bevyengine) 上(去年为 7,829 个和 5,316 个已关闭)
- **13,543** 次提交在 [GitHub](https://github.com/bevyengine) 上(去年为 10,831)
- **1,830** 个 GitHub Discussions(去年为 1,684)
- **501** 个 Bevy Assets(插件、crate、游戏、应用和学习材料)(去年为 442)
- **6,656,483** 次 [crates.io](https://crates.io/crates/bevy) 下载(去年为 2,753,203)
- **23,359** 位 [Bevy Discord](https://discord.com/invite/bevy) 成员(去年为 21,985)
- **6,906** 条社区 #showcase 条目在 [Bevy Discord](https://discord.com/invite/bevy) 中(去年为 5,697)
- **3,751,524** 条消息在 [Bevy Discord](https://discord.com/invite/bevy) 中(去年为 2,836,825)
请注意,为了保持一致性和清晰性,所有这些数字都采用“绝对总计”形式,因为通常就是如此报告的。例如,我们现在有 47,529 个*总计*GitHub 星标……也就是你会在我们仓库中看到的数字。我还包含了去年报告的总数,可以用来计算自去年以来的数字变化。
## 我引以为豪的事
[#](https://bevy.org/news/bevys-sixth-birthday/#things-i-m-proud-of) proud
我尽量不在这里重复自己,但请注意,我仍然为我在 Bevy 的[一周年](https://bevy.org/news/bevys-first-birthday)、[二周年](https://bevy.org/news/bevys-second-birthday)、[三周年](https://bevy.org/news/bevys-third-birthday)、[四周年](https://bevy.org/news/bevys-sixth-birthday/(/news/bevys-fourth-birthday))和[五周年](https://bevy.org/news/bevys-fifth-birthday)生日文章中所概述的事情感到无比自豪。
### BSN
[#](https://bevy.org/news/bevys-sixth-birthday/#bsn)
今年我们终于发布了 BSN:Bevy 的下一代场景系统(https://bevy.org/news/bevy-0-19/#next-generation-scenes):
```
bsn macro
```
这是 Bevy 易用性方面的巨大进步。它让开发者能够快速、轻松地生成可组合、可继承、相互关联的 ECS 实体和组件层级结构,并以模板化、感知依赖和资源的方式进行(有些引擎称之为“prefabs”而不是“scenes”)。开发者可以在 Rust 代码中使用 `bsn!` 宏来组合 BSN,也可以在资源文件中定义它(`.bsn` 资源格式应该很快就会登上 Bevy 的 `main` 分支)。BSN 也是 Bevy UI 未来发展的关键部分。UI 开发者(尤其是引擎领域之外的)期望达到某种程度的易用性,而原始 Rust 无法提供这一点。有了 BSN,在 Bevy 中组合 UI 从未如此简单!
```rust
fn button() -> impl Scene {
bsn! {
Node {
width: px(200),
height: px(100)
}
on(|press: On| info!("pressed!"))
Children [
Text("Button")
]
}
}
```
与其他流行的 UI 框架不同,BSN 是一个通用的、由 ECS 驱动的数据层,对于游戏逻辑、通用应用逻辑和 UI 逻辑同样有用。BSN 对于即将到来的 Bevy 编辑器至关重要,它将是一个基于 Bevy UI + BSN 构建的普通 Bevy 应用。Bevy 编辑器还将通过可视化场景编辑器来*组合*BSN 资源。我很高兴看到人们在实践中享受 BSN。[Exofactory](https://store.steampowered.com/app/3615720/Exofactory/) 的开发者将他们的生成代码移植到 BSN 后,[节省了 7,364 行代码](https://exofactory.net/blog/2026-08-02/)。BSN 对我来说是一个多年的项目,最终获得了“现实世界”的价值,这种感觉太好了。我会让[博客文章](https://bevy.org/news/bevy-0-19/#next-generation-scenes)来解释 BSN 的细节,但这是一个作为 Bevy 开发者令人兴奋的时代!
### Bevy UI
[#](https://bevy.org/news/bevys-sixth-birthday/#bevy-ui)
Bevy 的 UI 故事今年取得了长足进展。除了 BSN 之外,我们还发布了“核心 Bevy UI widgets”,这些是仅包含行为、“无样式”的 widget,旨在作为样式化/更高级 widget 的共享基线。将 `Button`(https://docs.rs/bevy/latest/bevy/ui_widgets/struct.Button.html)widget 添加到你的实体上,它就会开始像一个按钮一样运作,带有按钮事件、按下和悬停状态、键盘快捷键以及无障碍功能!
```rust
fn button() -> impl Scene {
bsn! {
Button
Node {
width: px(200),
height: px(100)
}
on(|activate: On| {
info!("Button activated!")
})
}
}
```
我们发布了按钮、复选框、单选按钮、列表、滚动区域/滚动条、滑块、模态对话框、菜单和弹出框。我们还*终于*发布了一个上游的文本输入 widget:Bevy UI 现在还支持[渐变](https://bevy.org/news/bevy-0-17/#ui-gradients)、[每侧 UI 边框颜色](https://bevy.org/news/bevy-0-17/#ui-gradients)、[文本背景颜色](https://bevy.org/news/bevy-0-17/#text-background-colors)、[自动方向导航](https://bevy.org/news/bevy-0-18/#automatic-directional-navigation)、[删除线、下划线、字重和连字等字体变体](https://bevy.org/news/bevy-0-18/#font-variations)、[可变字体属性](https://bevy.org/news/bevy-0-19/#variable-font-properties)以及[更好的字体选择](https://bevy.org/news/bevy-0-19/#richer-text)。Bevy UI 领域开始变得相当实用了!
### Bevy Feathers
[#](https://bevy.org/news/bevys-sixth-birthday/#bevy-feathers)
我们还在今年早些时候发布了 Bevy Feathers(由 [Talin](https://github.com/viridia) 主导),并在全年不断对其进行了重大演进和扩展。Bevy Feathers 是我们有主见的“开发者工具”widget 集合,它构建在上面提到的“核心 Bevy UI widgets”之上。
```
feathers
```
我们正在使用这些 widget 来构建 Bevy 编辑器,此外还包括 ECS 检查器、调试菜单等。
### Bevy 渲染开发者们火力全开
[#](https://bevy.org/news/bevys-sixth-birthday/#bevy-rendering-devs-go-hard)
今年*充满了*渲染器的工作。我们[发布了](https://bevy.org/news/bevy-0-17/#bevy-solari-raytraced-lighting-experimental)并[演进](https://bevy.org/news/bevy-0-19/#solari-improvements)了 Solari,我们实验性的实时光线追踪渲染器(由 [Jasmine](https://github.com/JMS55/) 主导):
```
solari
```
对于 GPU 驱动渲染来说,这是硕果累累的一年(由 [@pcwalton](https://github.com/pcwalton/) 主导)。在现代硬件上,Bevy 现在可以处理巨大的场景:以可玩的帧率绘制数百万个实体。我们新的 `bevy_city` 示例就是一个很好的真实世界测试。它程序化生成一座城市(默认情况下有 55,000 个实体,包括移动的汽车),并且可以以 60fps 渲染!这不需要特殊的“性能”API,只需要标准的、易于使用的数据驱动 Bevy API。
```
bevy city
```
我们还开始落地“渲染器统一”工作。Bevy 的 3D 渲染目前已经相当先进,我们希望 2D 渲染器能够共享相同的基础设施,并受益于我们所做的所有工作。[几天前](https://github.com/bevyengine/bevy/pull/25088)我们完全采用了 [WESL](https://github.com/webgpu-tools/wesl-spec) 着色器(从我们自定义的 WGSL 方言迁移出来)。WESL 扩展了 WGSL,支持模块/导入和一流的条件编译。它有一个原生 Rust 工具链,无需专门配置即可“默认”构建,而且我们可以将其部署到“任何地方”。我们一直在与 WESL 团队紧密合作,以塑造规范并确保它非常适合 Bevy。
```rust
import package::{color::palette, shape::star};
import lygia::{draw::fill::fill, generative::snoise::snoise2};
import env::u;
@fragment
fn main(@builtin(position) pos: vec4f) -> @location(0) vec4f {
let uv = pos.xy / u.resolution;
var sdf = star(pos.xy, u.resolution);
@if(noise) // 运行时或构建时的条件
sdf += snoise2(uv * 8.0 + u.time) * 0.15;
let shape = fill(sdf, 0.6);
return vec4f(palette(uv, u.time) * shape, shape);
}
```
目前的基线实现相比旧的 Bevy 着色器体验有了显著改进,但这仅仅是开始。他们正在构建诸如泛型之类的功能,这将使我们能够打造比现在更易用的高级 Bevy 材质着色器。我们的目标是提供一个独特的“集大成者”式统一实现,让简单的事情变得简单,同时又不向喜欢钻研的人隐藏细节(经典 Bevy 风格)。我们还发布了大量的渲染器特性:我们的虚拟几何(“nanite”)实现[获得了 BVH 剔除](https://bevy.org/news/bevy-0-17/#virtual-geometry-bvh-culling),我们发布了 [DLSS 支持](https://bevy.org/news/bevy-0-17/#deep-learning-super-sampling-dlss)、[接触阴影](https://bevy.org/news/bevy-0-19/#contact-shadows)、[基于物理的屏幕空间反射](https://bevy.org/news/bevy-0-19/#physically-based-screen-space-reflections)、[矩形区域光](https://bevy.org/news/bevy-0-19/#rectangular-area-lights)、[光照纹理](https://bevy.org/news/bevy-0-17/#light-textures)、[实时滤波环境贴图](https://bevy.org/news/bevy-0-17/#realtime-filtered-environment-maps),极大地改进了我们的[大气渲染](https://bevy.org/news/bevy-0-18/#atmosphere-occlusion-and-pbr-shading),并修复了一些困扰我们一段时间的[“PBR 渲染怪癖”](https://bevy.org/news/bevy-0-18/#pbr-shading-fixes)。
### Jackdaw:社区驱动的 Bevy 编辑器实验
[#](https://bevy.org/news/bevys-sixth-birthday/#jackdaw-the-community-driven-bevy-editor-experiment)
今年我们继续为上游 Bevy 编辑器奠定基础。在我们做这些工作的同时,Bevy 社区的成员(由 [@jbuehler23](https://github.com/jbuehler23) 主导)开始使用这些基础(BSN、Bevy Remote Protocol、Bevy UI、Bevy Feathers)来构建一个名为 [Jackdaw](https://github.com/jbuehler23/jackdaw) 的功能性 Bevy 编辑器原型。Jackdaw 正在变得*危险地*实用:它已经拥有可视化的 BSN 场景编辑器、ECS 检查、撤销/重做、动态插件/扩展加载系统、材质系统、地形编辑、项目管理器/创建器以及几何编辑工具。他们出色地探索了这片领域,并在实践中检验了 Bevy 的基础设施。一旦我们在上游再落地几个基础组件(例如 Asset 作为实体和 `.bsn` 资源支持),我们就会启动 Bevy 编辑器工作组,届时我计划将注意力集中在引导上游 Bevy 编辑器开发上,与 Jackdaw 开发者合作,吸收 Jackdaw 的最佳想法,并*这次来真的*构建 Bevy 的官方编辑器。
### Bevy Metrics
[#](https://bevy.org/news/bevys-sixth-birthday/#bevy-metrics)
在游戏引擎中跟踪性能、编译时间和二进制体积的回归是*至关重要的*。过去,我们一直都是“按需”手动完成这项工作。感谢我们[慷慨的捐赠者](https://bevy.org/donate)和 [François](https://github.com/mockersf) 的努力,我们上线了 [Bevy Metrics](https://metrics.bevy.org/):一个自动化的指标系统,它会在每次 Bevy 提交时运行,持续跟踪 Bevy 的运行时性能、编译时间和二进制体积。它已经帮助我们捕获了大量回归问题,并且将是我们未来关键的基础设施之一。
相似文章
Bevy 0.19
Bevy 0.19 是 Rust 游戏引擎的一个重要更新,引入了下一代场景(BSN 格式)、通过更多 GPU 工作实现更快的渲染、接触阴影、新的 UI 组件、文本输入支持、后处理效果等等。
虚拟Bevy Meetup 13 录像现已上传至YouTube
Bevy Meetup #13 的录像现已在 YouTube 上提供,内容包括关于 bevy_ui 中的 VFX 编辑器、Bevy 在 iOS 上运行以及使用 Unbug 进行符合人体工学的运行时断言的演讲。
我用 Vibe Coding 写了一个让工程师在 GitHub 上关注的东西
作者宣布了 iai-mcp,这是一款专为 Claude Code 设计的本地记忆工具,能够跨会话保留上下文。作者还反思了该项目在 GitHub 发布后收到的积极社区反馈以及随之而来的快速迭代。
@jh3yy: 我们做了个新东西……有些细节虽然能感受到,但或许常被忽略
Shopify 发布了 Editions 2026 春季版,并附带一篇技术拆解帖,详细介绍了其构建过程。
@gauravsbuilding: 旧金山6周回顾:> ARR增长10倍 > 结交了一生的朋友 > 发布了8个主要功能 > 通过X上的发布获得约2000万次观看…
一位创始人在旧金山6周的回顾显示,ARR增长10倍,发布8个主要功能,约2000万次观看,周增长60%,用户达到2万。