准备开发一款属于自己的人生游戏。这几天做了调研,Unity 中国最近好像搞了啥幺蛾子遭全网痛批,间接了解到 Godot 比较适合新手,对于完全没搞过游戏开发的小白可以用 GDScript ,应该比较好入门。还看到有大佬开发了 Godot 转微信小程序游戏的框架,兴趣一下子就来了。现在开始有疑问,如果要做移动端的游戏开发,Godot 有 Android 版,但是开发完 Android 又要单独开发 iOS 版? Flutter 可不可以参与进去?
想开发一个 Android 、iOS 、微信小程序端的游戏,最方便的技术栈是什么?完全没头绪,求大佬们解答。
其实你的问题很好解决,只需要花几天的时间,把几款主流的游戏引擎都玩一下。不用自己写游戏,这些引擎都有一些示例项目,你可以打开这些项目,然后简单操作一下界面,自由摸索,可以随便改改场景试试看。再根据文档把编译环境都搭建起来,打包发布到不同平台上运行看看。做完这些操作以后,一切疑问都烟消云散了。
我觉得反正别用 Unity 。打工可能不得不用,但是个人千万别碰这东西。3D 被 Unreal 拉了 10 年以上的差距,2D 优势相比 cocos 和 godot 之类的也在变小。开发体验极其差劲,小项目改一行代码也能给你整个半分钟以上,大一点甚至能两分钟。编辑器 ergonomics 很差,文件浏览和各种疯狂拖拖拖简直折磨。
动画系统羸弱至极,有 technical artist 的团队都会自己定制一套动画系统,但是你个人是做不到的。未来毫无前景,上面提到的缺点在 Unity 6 发布时曾画大饼,说会在 Unity 7 改进,然而随后就大量裁员,回归初心,然而你要知道,它的“初心”可不是游戏,因为 Unity 本质上就不是一个游戏引擎公司,而是一个广告服务公司,它回归初心就是把花钱的引擎 R&D 干掉,重点干广告和云服务。
另外你的游戏是什么类型的?“人生游戏”是那种简单的文字游戏吗?那种游戏其实你不用引擎也可以的,就直接用 Web 之类的技术就行了。用游戏引擎开发跨平台游戏就是靠引擎自己打包,游戏开发完直接构建对应平台的包就行了。以及 godot 支持输出网页模式构建,如果你不是为了接入微信的 SDK ,那直接网页版就行了,没必要小程序(你也没见过哪个独立游戏专门搞开发者搞小程序游戏吧,合成大西瓜和人生重开模拟器当时都是网页游戏)。
godot 生态现在也发展的很好了(自国际版 runtime fee 幺蛾子后飞跃提升),现在 game jam 中占比和 unity 很接近了,B 站也有很多人分享经验。一定要用 unity 的话,国际版可以用,团结引擎还是算了,明显就是 toB 的,不 care 个人开发者,个人用属于自讨苦吃,项目还 vendor lock ,转不出到 unity ,说白了就是 unity 中国利用区域代理垄断搞的劣币驱逐良币。如果不是打工公司让用,我想不到你为什么要用它。
Unity 还有一点令人诟病的是它那个域重载,即使是空白项目你动一行代码就要重载半天,虽然可以关闭域重载但关闭后也有弊端。不知道怎么搞的那么慢的,这都 2025 年了还没解决……你换 godot 体验好的不是一丁半点……如果你要开发微信小程序的话可以用 Unity 中国版团结引擎,和 Unity 原版比添加了很多本地化的内容比如导出到微信、鸿蒙等。游戏开发和其他 app 开发最大的区别就是游戏的画面是游戏引擎调用底层的图形 API 绘制的,和系统交互很少,而其他 app 无论是 native 开发还是使用 react native 、Flutter 等其实都是调用的系统控件进行组合,并不在一个层级,结合使用不太容易或者说几乎没有这么干的。
Unity 中国确实幺蛾子不少,但你要想发布到微信的话,Unity 原版确实做不到,只能用中国版团结,不过可以用 Unity 原版进行开发,然后用团结引擎进行打包,如果你是完全没接触过游戏开发的话,我觉得你可以考虑直接用团结引擎,因为很可能你用的 Unity 原版和团结引擎版本对不上导致各种奇葩问题。最后,先动手把你要做的东西做出来,然后再考虑分发的事比较好,分发的事你不用担心引擎不支持,总能找到解决方案的