尽量不使用游戏引擎提供的工具来制作游戏是正确的思路吗？
错误；如果你是那种能手撸引擎（包括但不限于渲染，资源管理，场景管理等等模块），且已经做过几个项目的大佬除外； 商业引擎也许没有提供最优的解决方案，但提供的一定是次优，并且经过检验的解决方案，市面上的游戏已经帮你验证了引擎提供的各种工具，并且坑也已经有人帮你踩了，如果在自己去撸一个xxx工具，你自己遇到的坑绝对比Unity给你的多； 个人建议是，优先用引擎提供的各项工具，如果发现它确实性能、开发效率、稳定性不够，那么可以尝试参考它的开发方式去开发一套你自己的xxx系统、工具；因为是为了开发游戏使用引擎，而不是为了开发工具使用引擎，应该优先保障的是开发效率、游戏稳定性，而不是为了满足自己的各种技术追求；
先说结论 新项目小项目： 直接用 官方插件/有口碑的第三方插件 > 自己魔改 > 自己重新写。 老项目： 维持现状。 ——————分割线——————- 先说说序列化 unity的序列化(mono,so,prefab)应该能满足你99%的需求，它的性能，兼容性，健壮性一般来说你是很难用出瓶颈的，所以除非你有明确的理由和使用场景能证明自带的序列化无法满足你的需求，否则不要自己写，碰到问题应该首先找是不是自己的写法不对。 当然unity的序列化也不是完美的，某些时候它也有很难受的缺点，比如ScripableObject的解析速度和内存占用通常都比你自己写的要差；prefab的实例化截至目前都是同步操作，我们以前有一个体量非常巨大的玩法，一开始把几千个GameObject和mono存成了prefab，后来发现这玩意的实例化能达到数秒之久，思量再三最后不得不改成xml在runtime里做分帧异步加载，但是说实话小体量游戏基本随便造性能，完全没必要花精力在这里。 ———————分割线——————- 刚接触unity几年的新人可能体会不到早期unity的官方轮子有多匮乏和难用，所以题主说的对官方功能的不信任我是能理解的。 我前一个项目从4.x正式立项一直做到2018.x才上线，我是能感受到unity的轮子是在飞速发展的。以前的版本，镜头控制要自己写轮子，资源管理要自己管理assetbundle，剧情演出效果只有几个一堆吐槽的插件(最后买了插件源码自己改)，管线想做复杂一点的效果都得改源码，动作系统只有一个可怜的animator(预研的时候更惨只有简陋到爆的animation)。为此当年耗费了大量精力去写轮子。 后来的发展大家也都知道了，cinemachine现在几乎一统江湖，addressable经过几个版本的迭代也基本得到了认可。这俩功能虽然我们自己有非常稳定的轮子但新项目还是决定改用官方的了。srp问题还很多但至少现在可以不动源码去定制一些效果了(目前是自己魔改urp），playable我们目前使用是还算愉悦的。 当然老项目处于生命周期末期，即使新插件非常好用，但历史堆出来的屎山我们还是没有精力去做迁移了。 近几年unity的迭代对我们开发效率的提升还是非常显著的，以前常备八九个人来做轮子，还得项目组随时陪我们踩坑，现在2老带1新去做引擎维护都不会有太大压力，从这点来说，每年订阅引擎源码那点钱早就回本了(能改unity引擎和写unity轮子的人不便宜)，所以我们公司目前都还是非常拥抱官方新功能的。