今天,是我在广州阿里中心办公的最后一天。虽然 Last day 设定在了 5 月 20 日,但后面全部是假期,应该不会再回来这里。这些年的年假我都没有用过,总是到年底自动作废,今年算是休全(一小半)了。
回顾我的职业生涯,2001 年之前在北京经历了创业,而后又短暂的工作了数月。之后便在网易工作了十年 ,直到 2011 年离开 。2011 年底,我们创办了简悦,原本以为会把这家公司一直开下去,但在各种机缘下,于 2017 年底被阿里巴巴收购。之后,我便退出公司的管理,专心开发游戏引擎。
每段经历,印证着不同的心境。幸运的是,每次开始和结束,都是我的自主选择。感谢那些容忍着我的任性的伙伴,而我执着于自己想法的同时,也回报了周遭的人。
毕业的开始缘于大学时代交的诸多热爱游戏的朋友,年轻气盛的孩子们梦想做出自己的游戏。当我觉得自己能力还不足时,不愿意只是为了工资而把精力消耗在不太喜欢的事情上,所以我选择离开,独自提高自己。
进入网易,因为我从大学期间就在开发的风魂引擎。阴差阳错,我又挽救了一个失败的游戏项目(大话西游),然后一干十年。而离开,是为了重新开始。当我发现我无法在网易做出更多想做的东西时,能自己去主导做事,是莫大的诱惑。
创办简悦轻松自然,虽说是创业,但几乎没有感觉到压力。这应该是整个团队经历过成功带来的自信吧。虽然前两年并不成功,接连两个项目都做失败了,但又奇迹般搭上了手机游戏的快车活了过来。
我觉得这次创业经历给我最大的启发是:团队合作创业,一定要先确定好股权及利益分配的方案,再全权交给可以信任的人去执行,大家就能没有后顾之忧的做事。直到和阿里谈公司收购时,我们的创始人团队依然遵循着最初的约定,让几乎所有坚持到最后的伙伴都获得了还不错的经济回报。而阿里也因为我们的加入,在短短一年内就收获 了数倍的投资回报,双赢的结局。
2018 年开始,我决定安心做一点想做而擅长的事。人生短暂,学习如何管理很多人做事并非我期望的发展方向。尤其当我逐步融入开源社区后,我发现,这个世界上许多软件基础设施往往都是由一两个人支撑。早在 2011 年时,我就怀疑过,软件项目需要很多人一起完成可能是一个骗局 ,那么,当处于一个稳定的环境时而自己又有能力时,这种机遇并不多见,就应该尝试做点什么。
游戏引擎是我多年来一直想做的事情。早在二十多年前的校园里,我开始写自己的游戏时,就发现必须先有一些完善的底层设施支持。我的兴趣点一直都是挑战一个个具体问题。游戏引擎就由一系列具体问题构成,每一点做好都不容易。这件事需要一步步来,一步步试错,一个个问题解决。
我们在简悦时,游戏服务器部分的底层设施 skynet 从一开始就是开源形式开发的 。它几乎是由我一个人维护了许多年,同时又从开发社区吸收了大量的贡献,让它成长为一个成功的项目,甚至应用在游戏之外的大量领域。
而游戏客户端部分,一直未能建立自己的基础设施。虽然在 2013 年,我们在转型开发手机游戏时,我写了 ejoy2d ,但那只是一个为了支撑当时陌陌争霸这个游戏快速定制的小玩意。待到现在用于三国志战略版的几年,结构设计上已经不堪重负,欠了很多技术债。
虽然自己创办的公司已经完全卖掉,但我对这份事业还颇有感情。我认为,如果一个游戏公司想长远发展,那么拥有自己的底层设施颇具战略意义。自研开发是个缓慢的过程,初期一定看不到回报,很可能失败,但一旦成功,收益巨大。但这件事必须由一个不求短期回报,有强烈自驱力的人去做。除了我自己,还能有谁?
今天我结束在阿里的工作,是因为公司不再想发展自己的底层设施。这和叮当年初离开阿里有关。其中的曲折不便多说。叮当在离开前做的最后一件事,就是帮助我这些年开发的 Ant Engine 开源。
四月以来,叮当离开后,我一直在公司内努力促进引擎的发展。因为我真心觉得这六年来,我和我的小团队在 Ant 引擎开发这件事上一步一个脚印走得很踏实。我可以给引擎打上 80 分,开发过程中固然犯了很多错误,但最终,我想克服的技术问题,都在我的能力范围内解决的很好。自研引擎做起来虽然不容易,但能够花上六年专心开发更是难得的机缘,今天本应是开始让它开花结果的时候了。
整个四月,我和公司各个项目组的人长谈,项目制作人、程序、策划、美术…… 。感觉几周时间说的话超过了过去一年。我把我的信念传达到了。通过我们制作的游戏,也展示了引擎的质量:基于 Lua 快速开发的同时保证了在手机平台上的高性能,当前世代的图形管线表现出的还算精致的画面。以及,我认为最重要一点:没有欠下技术债。
我想我说服了不少人,但可惜的是,当下的公司决策人最终放弃它。或许阿里游戏现在有更急迫的事情要做,无法再等到三五年后它带来的收益。经过这些沟通,离开也让我了无遗憾。我已经做完了我能做的所有事,而过去几年的工作也颇有所获,可说是问心无愧。
之后,虽然开发团队已无法专职开发引擎,但大家对它还是颇有感情。好在主体功能均已完成,引擎本身的设计就倾向于方便扩展,我的想法本身就是像 skynet 那样,只专注于维护最核心的部分。引擎已经开源,是不是专职开发也就不那么重要了,主要开发者都会在业余时间尽力维护。
而我,也将开启下一段旅程。初步的想法是制作一款 Windows 平台的独立游戏。虽然我们在过去的一年已经在做一款类似异星工厂的游戏,但那主要是为了展示引擎在手机平台上的质量,它的 gameplay 方面还需大量工作。我并不认为手机是个好的独立游戏平台,需要把重心放在 PC 上。引擎对 Windows 以及 Steam 的支持,会是我的短期工作。这些会随着我自己动手编写游戏代码,慢慢完善。
具体做怎样的独立游戏,还在酝酿中。引擎开发团队中唯一的美术也和我一起离开阿里,他是一个多面手,和我一样对独立游戏开发有极大的兴趣,在接下来的几个月,我们会一起构想。