Redian新闻
>
“羊了个羊”背后的游戏引擎Cocos:这绝不是团队最高光的时刻

“羊了个羊”背后的游戏引擎Cocos:这绝不是团队最高光的时刻

科技

嘉宾 |林顺、王庆利、凌华彬
编辑 |赵钰莹

最近的一款微信小游戏“羊了个羊”把不少人虐得“死去活来”。

微信官方小程序数据显示,9 月 14 日有 2600 万用户参与了挑战,短时间内涌入的玩家过多导致游戏服务器两天崩了三次。

随后,公司紧急发布招聘启事,广泛吸纳“Go 服务器端开发工程师”和“CocosCreator 客户端开发工程师”,这表明该游戏底层基于 Cocos 引擎。

根据媒体爆料,该游戏背后的研发人员只有三个,三个人就能完整开发这样一款小游戏也让 Cocos 引擎再次吸引了业内的广泛关注。

当然,这绝不是 Cocos 引擎最高光的一次,毕竟曾一举推动中国手游市场崛起,众多现象级游戏《捕鱼达人》、《梦幻西游》、《开心消消乐》均基于 Cocos 引擎,而且还是国内首个支持任天堂 Switch 平台的 3D 商业引擎。

近日,InfoQ 有幸采访到了 Cocos CEO 林顺、引擎团队技术负责人凌华彬、XR 团队技术负责人王庆利,一起聊聊这款成立第一天就开源,支撑了众多现象级游戏的商业引擎,其背后的技术团队过去及现在都做了哪些思考。

1 “羊了个羊”背后的技术,Cocos 十年前就具备了

“其实,我们在2011年引擎的最初版本,就足以支撑‘羊了个羊’这样一款游戏的运行”。

说这话的是凌华彬。多年前,他在法国开发 HTML5 应用时被推荐使用了 Cocos2d-html5 这样一款中国引擎,回国后就毫不犹豫地加入了 Cocos 团队。

这句话也没有夸大的成分。因为 2011 年前后,Cocos 引擎就支撑起了另一款现象级游戏——捕鱼达人的走红。

Cocos 引擎的前身是阿根廷人 Ricardo Quesada 在 2008 年推出的用于 iOS 平台的 Cocos2d-iPhone。2010 年,当时的王哲(Cocos创始人)和林顺在联通沃 Phone 操作系统团队,当时团队看到一个需求,有些开发者在开发了 iOS 游戏后,想要移植到安卓平台,但当时并没有好用的移动跨平台游戏引擎。他们选择加入 Cocos 社区,创建了跨平台的 Cocos2d-x 引擎分支,并开源了出来。

随着捕鱼达人的爆火及其开源的定位,Cocos2d-X 被越来越多的开发者熟知。

2015 年之前,Cocos 的主要特色是具备优秀的兼容性、跨平台、高性能、轻量化,并且当时非常具有远见地投资了安卓生态,大大降低了跨平台手机游戏的开发门槛,也催生了绝大多数中国当前的 Top 游戏公司,可以说促进了中国手游的崛起。在 2014 年的统计中,其在应用商店 Top 1000 的头部手游里占有率达到了 70%。

直到今天,其跨平台的特性依旧被开发者称赞不已。“羊了个羊”由于使用了 Cocos 进行开发,能够同时打包成不同平台的版本,包括原生 / 小游戏 /Web 端等,大大降低了开发不同平台版本的时间,使得其在继小游戏之后,可以迅速发布 APP 版本,目前 APP 版本在 TaTap 的预约已经突破 10 万。

在“羊了个羊”爆火之后,林顺也带着团队与对方交流过,这样一款现象级游戏的诞生与很多非技术的因素有关,因为早在这之前,Cocos 的官方线上商店中也出现过一款玩法与之相似的游戏,但就是没火。

Cocos 作为游戏引擎能做的就是提供一个好的技术保障,比如不同平台的加载性能和画面表现等。“羊了个羊”走红之后,与 Cocos Creator 直接合作的平台很快就看到了该游戏上架,没有直接合作的平台也在两三天内陆续上线,还出现了 3D 等各种版本,这都是引擎层设施成熟的表现。此外,Cocos 的商店中上线了大量与之相关的模版、设计、玩法等内容,“单纯从开发角度来看,未来开发同样一款游戏几个小时就可以搞定“,林顺在采访中表示。

如果 Cocos 的目标只是支撑几个现象级的游戏,或许技术迭代也就止步于十年前了。即便如此,好像也没有什么问题,2D 在今天依旧存在广阔的应用空间,但他们想做的是一款世界级的游戏引擎。

于是,整个团队开始探索 3D 化,这也让他们遇到了第一次低谷。

2 数次尝试、重写,造就国内首个支持 Switch 平台的 3D 商业引擎

今年 7 月份,Cocos 宣布 Cocos Creator for Nintendo Switch 版本正式开放申请,Cocos 也成为国内首个支持任天堂 Switch 平台的 3D 商业引擎。

做 3D 引擎,这是 Cocos 过去数年的技术执念,而执念往往是需要历经艰难才可以达到的。

2015 年,顺风顺水惯了的 Cocos 第一次开始尝试 3D 化,想在 2D 的基础上去做 3D 引擎,然而两者的核心机制有根本性的不同,当时的引擎和编辑器设计还比较传统,技术上碰壁不少。雪上加霜的是,其竞争对手——跨平台游戏引擎 Unity 也正式开始大举进军移动市场。

整个团队迅速调整路线,进入第二阶段,尝试打造一个现代的编辑器,并于 2016 年推出了 Cocos Creator,引擎的架构也彻底更新成了数据驱动、组件式的现代架构。

在 Cocos Creator 的基础上,团队于 2017 年重新开始挑战 3D,将整个 3D 引擎底层从零开始重新搭建,2019 年发布了 3D 化的引擎分支,2021 年正式将 2D 和 3D 合并发布 Cocos Creator 3.0。最终经过五年的积累,才达到今天 Cocos Creator 3.6 的阶段——一个完全现代化的 3D 引擎。

在 Cocos 引擎团队看来,3.6 版本是十分重要的里程碑版本,相较于前一版进行了多个方面的大幅进化,比如:

  • 性能优化:原生化,2D & 3D 性能的全面提升

  • 渲染表现力提升:CSM 级联阴影、GGX 反射卷积图、Surface Shader 材质定制、各向异性光照

  • 产品驱动开发:编辑器预览,粒子噪声图,动画嵌入播放器,多语言编辑器

3.6 版本中的 CSM 级联阴影演示

更多功能请访问:https://www.cocos.com/cocos-creator-3-6#10231

在这个过程中,最难的是“开着飞机换引擎”,重构面临的技术挑战巨大,不仅目标难度高,还需要保障切换顺畅,也就是在保证兼容性的基础上完成升级。此外,团队还需要把酷炫功能做到足够好用,比如编辑器预览功能在 3.1 版本中就做过,但因为体验不好关闭了,3.6 版本又进行了重新优化。

时间周期跨度最大的则是原生化。2021 年夏天,团队就开始讨论原生化的技术方案,做了三四种预案,针对不同的技术方向设置了不同的原生切分层级。随后的一年时间,团队开始了原生层的重写,进行了多个阶段和多个模块的重构,并且逐阶段进行大量的测试验证,原生层代码增加了两倍多。

然而到更上层的 2D 性能优化时,团队最先感受到的就是挫败感,因为性能出现了大幅度的倒退。团队又开始针对各种性能热点做大量的分析和验证,逐步提升到远超之前的性能表现。

“其实,也有一些重构的尝试最终以失败告终,没有进入到版本中。但我们相信引擎的研发就是充满挑战和失败的,但我们会不断尝试新的方式,持续迭代。”

在开发过程中,团队积极听取用户的反馈,比如接触到一位 3D MMO 的 CP 有很多更高级的需求,尤其是粒子、地形方面,团队临时调整了优先级,将这些需求排进去。同时为了更好地满足用户需求,引入了产品角色把控需求分析和解决方案设计,并且跟踪到实现的验收和交付,这种方式保障了实现的功能切实满足用户需求。

这些层面的优化不仅让 Cocos 引擎的性能大幅提升,并且给引擎带来了更高的天花板,在跨 Web 和 Native 两个层面都尽量用原生的方式来实现,Web 端使用 JS,Native 端使用 C++,预料到做好统一很困难,所以团队采用了渐进式的方式来实现。

至于为什么选择在这个时间点做这件事情,凌华彬在采访中表示,未来 Cocos 引擎会承载更多重度的游戏和元宇宙应用场景,比如开放世界、大地形、复杂的桌面级渲染管线。同时,Web 端也会开始使用 WebGPU,团队使用 Wasm 技术将原生的 WebGPU 管线编译到 Web 端运行,大大统一了 Web 和 Native 的渲染器实现,原生化是这一切的基石。

如此所说,我们是时候考虑元宇宙时代的到来,游戏引擎可以在其中做些什么事情了。

3 元宇宙的未来,Cocos 的探索不止于游戏

“游戏引擎是元宇宙时代重要的基础设施,而 XR 则是非常重要的入口”,林顺在采访中表示。

不久前,Cocos面向开发者推出了Cocos CreatorXR 社区版,在开发者社区引发了激烈讨论,有开发者表示终于等到了XR版本,也有的惊讶于Cocos在研究XR技术,甚至还有开发者当天就跑通了开发流程。在开发者社区经过一段时间的试用后,Cocos 上周发布了Cocos CreatorXR 正式版,并且还对首批试用企业提供技术对接。

采访中,王庆利表示,很多开发者会在意当前 XR 版本支持哪些设备,是否有预览功能以便能快速上手运行,目前该版本已支持包括 Rokid Air、Meta Quest2、Huawei VR Glass、Pico Neo3、Monado 等多个品牌的设备兼容适配,未来也会根据开发者的反馈进行更新。

如今, VR/AR 品牌全面开花,而各家均有各自的开发 SDK 和交互方式,对于开发者来说,适配各家设备是一项极其繁琐且耗时耗力的工作。Cocos 引擎的 " 一次开发跨平台部署 " 将大幅提高适配效率。

此外,Cocos CreatorXR 智能支持 GLES3、GLES2、Vulkan1.0、Vulkan1.1 等渲染后端,XR 应用启动时将根据打包选项采用当前设备适配的最佳图形 API;而基于 Web 端预览功能,开发者可以在 Web 端使用鼠标、键盘模拟头戴显示器、手柄控制器等组件,快速测试优化 XR 内容。

在刚刚结束的 2022 世界人工智能大会(WAIC)的现场,Cocos 基于现有的能力打造的线上版「元生无界」,让与会者初体验了元宇宙时代的参会方式。

「元生无界」大世界包含张江区域和临港区域,实现了虚拟角色创建、线上参会、空间互动、社交语聊等相关功能。根据会议门票指引,用户可前往会堂大厅中的会议室进行线上参会。进入大会议室入座后,可以切换沉浸视角、真实视角 (角色第一视角)进行观看。

XR 产业历经多年的发展,VR 已形成一定的内容生态,我们已经看到该技术在教育、游戏等方向的尝试,确实可以让开发者与设备正向跑起来。

但 AR 却几乎处于起步状态。如全球最火的 AR 游戏《Pokemon GO》,虽然收入已超过 60 亿美元,但用户并非为了 AR 买单,好在我们也看到了其在工业展览设计等领域的应用。

未来,Cocos 会与合作伙伴一起去为元宇宙的不同场景提供解决方案或者是模板,持续提升该领域内容的生产效率,提升整体的内容品质。

“我们希望可以做好元宇宙时代的国产基础设施,进而促进整个行业的发展。最终希望能够提供一个集策划、开发、打包等工具链一体化的云服务。”

而在元宇宙世界成型之前,Cocos 团队会先带着众多开发者及他们优秀的创意一起出海。

4 从立足全球开源到带着开发者出海

从落地第一天起,Cocos 引擎就选择开源,在全球范围内获得了广泛受众,并在无形中推动了整个手游行业的发展。

全球化的服务能力和开源氛围吸引了王庆利、凌华彬等一大批优秀工程师的加入,而这个决定在林顺看来是过去多年最正确的选择之一。

开源让 Cocos 足够中立,并得以站在更广阔的空间以全球化的视角看待自己所做的事情,虽然会带来额外的成本投入,毕竟海外市场与国内市场在研发运营和社区生态维护层面存在差异,但这也让整个团队的技术体系得以与世界接轨。

“这其实是一个很重要的选择,当然有些人觉得可能我并不想这么做,毕竟这不一定能让我获得最好的商业回报。”

通过开源,Cocos 引擎的代码获得了大量社区优秀技术专家的贡献,也让整个团队有机会接触到海外优秀的企业,并与之建立合作关系,这在 Cocos 的国际化方面起到了非常正向的作用。

如今,Cocos 带着更广大的开发者和他们优秀的想法一起出海。采访中,林顺表示,首先,Cocos 针对海外平台同样提供了跨平台部署的能力,这也是 Cocos 一直坚持的基础保障;其次,不同的针对开发者在做的不同内容,Cocos 可以提供很多本地化的服务,比如多语言插件,更好地将内容针对不同的平台做部署;最后,Cocos 与海外顶尖的技术企业保持着良好的合作关系,以 Google 为例,Cocos 和 Google 长期以来一直保持着密切的合作,特别是在全球化方面的支持。近期又在增强 Web 端服务方面达成了新的合作,针对用户在 Web 端的变现需求,Google 将官方制作服务于 Cocos 开发者的 Google AdSense 插件,届时开发者只需要简单勾选即可一键集成,体验到无缝连接的 Web 端变现服务。

v3.6 提供了内置的多语言工具 Localization Editor(L10n)示例

5 未来规划

在编辑器内核层面,团队接下来会在资源管线、引擎容器、场景数据三个方向进行优化。

在技术层面,Cocos 依旧会将游戏作为主要方向,不断完善工具链及 3D 基础设施,以应对越来越高的自动化要求,并在此基础上联合合作伙伴提供更加完善的服务。

在生态层面,Cocos 今天已经从游戏引擎变成一款 3D 通用渲染引擎,生态不仅包含游戏,也包含车机、虚拟偶像、元宇宙等各种方向。除了服务好各行各业的不同诉求,Cocos 将针对不同行业及场景提供对应的解决方案,帮助大家更高效的进行内容创作。

在 XR 层面,团队的主要目标是让开发者更方便、低成本、高效地使用 XR;将元宇宙涉及的相关工具进行集合打通;在不同设备上的运行状态更加轻量化和低功耗。

“游戏引擎是基础设施,未来我们希望可以触达更广阔的行业,支持更多的开发者创作出无与伦比的精彩内容,这是我们永远期待且满怀热忱的事情。”

今日好文推荐

华润雪花啤酒数字化进行时,独家揭秘其转型框架是如何制定的

字节跳动现象级 App 十年成长史,移动端基础建设与组织演进之路 | 卓越技术团队访谈录

满心欢喜入职 Gitpod 一年后失望离开:垃圾邮件当 OKR、天天造势但就不兑现承诺

钉钉总裁称非常讨厌红点和 DING 消息;Mozilla 控诉苹果、谷歌和微软锁定浏览器;特斯拉上海工人薪酬曝光:到手七八千|Q 资讯

 活动推荐

后疫情时代,难得的线下峰会,OGeek 南京技术峰会要来啦!本次峰会以“云无界、端无边”为主题,与各位开发者一起探讨音视频、云渲染、AIoT、一站式应用开发等热门技术的演进方向,共建端云协同生态。报名现场签到即可现场领取 OGeek 定制周边及纪念礼品,期待与您 10 月 29 日,在南京金茂威斯汀大酒店不见不散!

微信扫码关注该文公众号作者

戳这里提交新闻线索和高质量文章给我们。
相关阅读
一句话点透为什么我们在乎“二舅”故事的真假前完美世界副总裁崔铭:从游戏引擎到商业引擎|36氪专访“羊了个羊”火了,吉比特如此豪横赚多少分红分多少?“羊了个羊”轻松冲上热搜第一,这家公司靠“困难”模式赚钱“羊了个羊”背后公司清仓式分红10亿元;Meta元宇宙部门今年已亏94亿美元;微软称GitHub年收入10亿美元|Q资讯几分钱成本、捞走30亿,ta们竟然比“羊了个羊”还野?“羊了个羊”,年度气人王为什么拜登总统和福奇的新冠在转阴后又复发?分掉10亿,“羊了个羊”背后公司还能大赚多久?Costco本周门店实拍:没有什么过不去,除了“羊了个羊”第二关“羊了个羊”撬动字节游戏梦奇葩游戏《羊了个羊》火爆全网,同类游戏海外月收入竟超7000万?史上最难小游戏“羊了个羊”深度剖析!玩不过去是智商问题吗?被《羊了个羊》虐了一夜后,我选择重温这5款经典自虐小游戏“羊了个羊”背后公司“清仓式”分红,实控人获利3亿!还不用交个税!通关率不到0.1%的“羊了个羊”游戏,把全国网友整疯了……看你们在玩《羊了个羊》,我实在惊了个惊。全球游戏引擎商业化进入新阶段,国内头号玩家Cocos“三分天下”带娃玩“羊了个羊”,却玩出了学好数学的真相“羊了个羊”现借贷广告引用户反感让你抓狂的“羊了个羊”,可能根本通不了关游戏的尽头是“羊了个羊”被“羊了个羊”逼疯后,程序员自己做了个“鱼了个鱼”!为何中国“愤-青”众多?源头可能在此。。。。“羊了个羊”有多火,我们距离国产游戏大作就有多远“羊了个羊”,简直就是“精神传销”吉比特第三季营收13亿:靠“羊了个羊”走红 卢竑岩获分红3亿《羊了个羊》爆火小游戏, 3天10亿的财报, 到底藏了什么秘密?“羊了个羊”很火,能复制吗?创新!高中老师将“羊了个羊”游戏改编成“”历了个史”……听,教育早新闻来啦!也不是太难!纯前端实现「羊了个羊」小游戏“羊了个羊”刷爆朋友圈,上亿人热议:人这一生,最该看透的3个真相触摸美国 13 艰难生活营销比游戏做得好,《羊了个羊》其实是「游戏界的拼多多」|营销观察现世姻缘 (二十九)
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。