自建游戏引擎:为何仍有人选择这条路?

What You Gain by Building Your Own Game Engine

自建游戏引擎:为何仍有人选择这条路?

尽管 Steam 上自研引擎的游戏占比从 2012 年的 71% 降至 2024 年的 13%,但它们仍贡献了 43% 的销量。本文探讨了在 Unity 和 Unreal 主导的市场中,开发者为何仍要构建自己的游戏引擎。通过对比使用现成引擎与自研引擎的利弊,文章指出自研引擎能带来对底层技术的深刻理解,如渲染管线和性能优化,使开发者能针对特定游戏需求做出更精准的决策。此外,自研引擎还能减少对 Big Tech 和平台持有者的依赖,实现真正的技术独立。

你认为自己能做出比 Unity 或 Unreal 更好的通用引擎,这不可能;但你确实能为特定用例打造出更优秀的工具。
  1. KronisLV

    这让我想起了 Randy 的故事,我花了好几个月看着它上演——他无法克制自己去开发新功能、重写现有功能、或是折腾以优化工作流,但却真的很难发布任何东西。这就像是一种“修自行车棚”(bikeshedding)的形式,你实际上仍在产出,只是你产出的东西似乎根本无法让你更接近发布。

    记录这段旅程的视频可能已经无处可寻了:

    https://www.youtube.com/@randyprime/videos

    https://www.youtube.com/@randyprime2/videos

    如果你想做一个引擎并学习如何制作引擎——那就去做一个引擎吧。

    如果你想发布一款游戏——请深思熟虑,现成的引擎是否会是更明智的时间投资(因为你不必投入数百甚至数千小时去打造定制化的东西,反而可以在现有引擎中实现你需要的功能)。

    我怀疑,凭借我们拥有的优秀的开源和源码可用引擎(比如 Godot),大多数东西都会有插件可用,大家就能自己制作而无需从零开始(除非他们真的想从零开始)。比如目前 Godot 最出色的地形实现就是一个插件——https://tokisan.com/terrain3d/

    天哪,如果你愿意,甚至可以贡献给一些不太知名的引擎:比如 jMonkeyEngine、Flax(它很棒,就像轻量级且面向 3D 的 Unity/Unreal,占用资源更接近 Godot,并且有不错的 C# 集成)、Stride 以及……

  2. avaer

    萨丕尔 - 沃尔夫假说(Whorf hypothesis)也有一个游戏版本:引擎限制了你能构想出的游戏类型。除非你是那种已经发布过自研引擎的人,否则你可能甚至意识不到有数千个微小的决策强加给了你。这就是为什么这么多游戏看起来和玩起来都一模一样。

    根据我的研究,Steam 上的成功与自研引擎有一定的相关性。新颖性和从众中脱颖而出才是卖座的关键。如果你的思维受限于基础设施,想要做点新东西就难上加难。

    尽管如此,别去自研引擎。去开发你的游戏吧;引擎会从中诞生。

  3. poetril

    我理解制作游戏引擎往往与真正制作游戏背道而驰,但有没有人知道从零开始构建引擎的好文献?理想情况下是像《Crafting Interpreters》那样,但是针对引擎的。这事儿我已经列入清单很久了。

  4. bashmelek

    作为一个爱好者,我也不喜欢“游戏”这个概念变得如此标准化。那些知名引擎助长了这一点,它们内置的偏见旨在促进制作这类游戏,随后“引擎”的概念也受到了类似的限制。但游戏可以是任何充满乐趣的程序。

  5. tancop

    像 Bevy 这样的模块化引擎/框架混合体该怎么归类?它拥有游戏循环,所以技术上它是一个引擎,但你可以替换其中几乎任何部分,包括渲染和窗口管理。Tiny Glade 只使用了核心 ECS,其他所有部分都是自定义的。

同日更多故事

2026-08-14