三年全职 Rust 游戏开发,真要放弃 Rust 吗?(1)
近日,一篇《3 年全职 Rust 游戏开发后的经验教训,以及为什么我们要放弃 Rust》[1] 的文章引爆社区。
“说明:本文很长,但值得你一看。本文不是原文的逐字翻译,而是一种解读,以及思考和汇总社区中对此文的评价。
众所周知,有多少人爱 Rust 就有多少人恨 Rust。

在网上看到了一个两年前的评论,这件事好像也印证了他的说法,他是不是会偷笑自己的「神预言」 呢?
然而,先上结论:
只要认真看完这篇文章就会发现,该文其实是标题党,他们应该只是想寻求帮助,并不是真的想放弃 Rust,他只是放弃了用 Rust 开发游戏,Rust 游戏引擎应该还会维护。
文章作者罗列了 Rust 在游戏开发领域的局限性,这对 Rust 语言技术选型有很大参考意义。
作者强调,对于技术热情没有错,但认为人们应该非常谨慎地考虑自己的实际目标,并且最重要的是要诚实地说明自己为什么要做自己正在做的事情。而不是只是为了技术本身而做这个。
另外,需要说明的是,本文讨论的游戏开发范畴是:由个人或小团队制作且预算和时间表相对紧张的独立游戏。
并不是放弃 Rust ,而是寻求帮助
这篇文章的作者是一个名为 LogLogGame 的游戏团队成员之一,该团队成员只有两人,严格来说算是独立开发者。
他们用 Rust 开发了游戏引擎 darthdeus/comfy[2] 。说实话,如果不是这篇文章,我还不知道有这个引擎 (我从 2018 年开始基本每天都观察 Rust 在各个生态领域的工具和应用,这个仓库我昨天点过去竟然没有 star 过)。我认为他们并不是想真正放弃 Rust ,而是确实遇到困难了,想寻求帮助。可能是之前的社区宣传并不到位,所以想以这篇文章来吸引社区注意力。并非我揣摩作者的动机,他们在文章里也说明了,写这篇文章的目的之一,也是为了筹集资金来支持他们继续研发。去 Comfy 的仓库看看,今天还在更新。

事实上,文章除了标题里包含了“Leving Rust” 之外,整篇内容完全没有提到过他要放弃 Rust。他只是说以后不用 Rust 写游戏了,也许游戏引擎还是会维护的。
另外,他们在文章结尾还宣传了自己的新游戏:「《Unrelaxing Quacks》[3]是一款幸存者游戏,但速度很快。并且赞叹:“多亏了 Rust,让它成功地拥有了大量的敌人和抛射物,同时还能保持出色的性能”」。毕竟,这也是他们花一年多开发的心血。
我很好奇,这三年,他们是如何采用 Rust 呢? 文章的总结思考部分给出了答案,所以总结来说就是:
- 他们花了一年时间用 godot-rust 来实现了第一款上架 steam 的独立游戏 BITGUN[4] ,
- 然后他们沉迷于用 Rust 实现游戏引擎 Comfy 并完善,大约又花了一年
- 实现最新游戏《Unrelaxing Quacks》花了一年,可想而知,在实现这个游戏的过程肯定也进一步完善了 Comfy 引擎。因为 Comfy 是八个月之前才开源的。
“Comfy 是一个使用 Rust 构建的有趣的 2D 游戏引擎,它使用
wgpu和winit,使其跨平台,目前支持 Windows、Linux、MacOS 和 WASM。受到 macroquad、Raylib、Love2D 等许多其他引擎的启发,它被设计为能够正常工作并满足大多数常见用例。但 API 尚不稳定,可能会发生重大变化。如果您想在游戏中使用 comfy,可能需要深入源代码并可能手动调整一些内容。
这让我想到了 Rust 另一个游戏引擎是 Bevy ,先不比较两个引擎自身的优劣,先从两个引擎的商业模式来看。
- LogLogGame 独立游戏团队是为了实现自己的游戏,而去实现了自己的游戏引擎。然而他们还得靠自己的游戏来支持自己的研发,重心其实还在游戏上。
- Bevy ,是专注于开源游戏引擎,让广大独立开发者去使用,在反馈中发展。
我感觉 LogLogGame 想做的太多了,如果他们一开始就基于 godot-rust 或 bevy 来实现他们的游戏,而不把精力放到自己实现游戏引擎上面,状况会不会好点呢?这也不一定(文章后面给出了原因),但或许能给我们一些启示,找准自己的专注力方向可能更好一些。
也许作者也意识到了这个问题,他在文章里表示,将不会再用 Rust 开发游戏,但是新游戏发布以后,还会做 Comfy 引擎的渲染器迁移工作(如果我没有理解错的话)。
“作者原话:I do however plan to resume working on this after the release, and considering basic things already work there, I'm hopeful the port shouldn't end up being too complicated.
所以,我也认同。如果确实是预算和时间表都相对紧张的独立游戏开发,那使用自己擅长且成熟的工具快速完成游戏必然是第一需求,而不是把有限的精力用在和开发工具的磨合上。
欢迎咨询,九影专注软件定制15年,提供:游戏定制、元宇宙、线上展厅、虚拟仿真、AR/VR、小程序/公众号、网站/App、全景展示/3D建模、CRM/OA/ERP系统定制等。
热线:021-50309719 电话/微信15000568602

微信“扫一扫”免费获取 方案+报价!
如有侵权请通知删除,谢谢!
本文转自;三年全职 Rust 游戏开发,真要放弃 Rust 吗?-腾讯云开发者社区-腾讯云 (tencent.com)