第六章 九命引擎和社区
    陈声入伙后的第二周,平台有了第一个签约开发者。商店UI已经上线,后台架构也跑通了。但孟缘心里清楚,光有一个陈声不够。他需要一个爆款。而要做爆款,首先得有趁手的工具。

    “我们得有自己的游戏引擎。”孟缘说。

    林子轩把棒棒糖从嘴里抽出来,看了他三秒:“你知道一个能用的游戏引擎要做多久吗?”

    “知道。”

    “你凭什么知道?”

    孟缘沉默了一会儿。他看了一眼苏景辰,又看了一眼陈声。苏景辰停下画笔,陈声从代码里抬起头。四个人在这间三十平的出租屋里待了这么久,有些事迟早要说清楚。

    “我跟你们说件事。”孟缘把椅子转过来,面向他们。

    “我不是这个世界的孟缘。”

    他把穿越的事说了。从他在地球上做独立游戏被巨头平台剽窃,到他喝醉酒醒来发现自己躺在蓝星的医院里,到两个孟缘都有相同的遭遇,到他决定在这个世界重新开始。

    地球上的他做过好几款独立游戏,每一款都是用不同的引擎硬啃下来的。从安装到上手,从踩坑到填坑,从被工具折磨到学会驯服工具——那些经验像刻在骨头里一样,跟着他一起穿过了那道门。

    林子轩沉默了很久。他把棒棒糖从嘴里抽出来,放在桌上。

    “所以你知道哪些游戏会火,也知道怎么做引擎。”

    “我知道在地球上验证过的玩法,也知道地球上那些主流引擎每一款的优点和痛点。”

    “有的引擎画面顶级但太臃肿,做个小游戏打包出来十几个G。有的引擎轻量又好上手,但做不了大型项目,到后期就卡成幻灯片。有的引擎编辑器超级强大,但新手打开就被满屏按钮吓跑。还有的引擎做开放世界很厉害,但联机功能得额外买一堆中间件。这些坑我全都踩过一遍。”

    “所以这一次,我不需要花十年去试错。我知道正确的方向。”

    正常开发一个引擎,最花时间的不是写代码本身,而是走弯路。架构搭错了要推倒重来,技术路线选错了要全部重构,每个决策都像是在黑暗里摸索,走对了是运气,走错了就是几个月甚至几年的代价。但孟缘不需要摸索。地球上那些最顶尖的引擎已经用几十年的时间把所有弯路都走过一遍了,而他清楚每一条弯路的终点在哪里。

    “我要做的不是‘一个引擎’。”

    他说,“我要做的是地球上整个游戏工业走了几十年弯路之后,才能做出来的那个东西。编辑器既要简洁直观,又要功能强大。渲染既要顶级画质,又要低配流畅。网络层把猫步协议直接集成进底层,联机一个开关就能打开。跨平台一次开发,自动适配电脑、手机、主机。”

    林子轩把棒棒糖从左边挪到右边,又挪回来。他把椅子滑回工位,十根手指架上键盘。

    “架构图。画出来。”

    孟缘打开绘图软件,开始画架构图。他不会写底层代码,但他知道每一个模块应该干什么、模块之间怎么连接、开发者看到什么界面、游戏运行时引擎怎么调度资源。他画了一天一夜。苏景辰帮他优化了编辑器UI的布局,林子轩一边看架构图一边开始写核心层的第一行代码。

    接下来三周,四个人几乎没有出过这间出租屋。

    林子轩的键盘声一天到晚没停过。他可以连续十几个小时不间断地敲代码,吃的泡面是孟缘帮忙泡好了端到键盘旁边的,他眼睛盯着屏幕,叉子戳三下才能戳到面饼。孟缘负责模块设计和逻辑验证,每次林子轩写完一个模块他就第一时间测试,发现问题当场反馈,不需要等版本迭代。

    苏景辰包揽了编辑器的全部UI和图标,他的触控笔在绘图板上划过的次数大概和林子轩敲键盘的次数不相上下。陈声用正在开发中的引擎同步测试《星轨》的跨平台适配,引擎每更新一个版本,他就把《星轨》重新编译一遍,把所有能踩的坑都替未来的开发者提前踩了。

    正常引擎开发中那些最耗时的环节——需求变更、架构调整、技术选型推翻——在孟缘的脑子里已经被提前解决掉了。他知道每个模块应该长什么样,林子轩知道怎么用最快的方式把它变成代码,苏景辰和陈声把剩下的所有边角活全包了。

    第三周的最后一天,林子轩把最后一个渲染模块写完,编译,运行。屏幕上弹出一个窗口——九命引擎的编辑器界面。界面正中间是空白的场景视图,左侧是场景节点树,右侧是属性面板,底部是资源浏览器。整个界面简洁得只有黑白灰三色,所有按钮都收在合理的位置,没有一行多余的工具栏。

    “版本号0.1。”林子轩的声音很沙哑,眼睛里全是血丝,但嘴角微微翘着,“目前只有核心渲染、基础编辑器、脚本系统,还有猫步协议的网络层集成。高级模块还没做,但做游戏已经够了。编辑器启动时间一秒二,新建空项目打包出来四兆。低配模式下一台几百块的上网本也能跑满三十帧。”

    他

本章未完,请点击下一页继续阅读>>