Cocos Creator 3.3 今日发布,实现 3D 技术突破,优化 2D 性能体验

今年春节之后,我们就一直在想,用什么样的艺术设计能更好地向大家展现 Cocos 引擎的 3D 能力呢?当时「赛博朋克2077」还在比较高的热度上,我们也发现了赛博朋克世界里霓虹闪烁的光影世界,可添加几乎无限的光源和各种反射,加上偏写实但又有足够创作空间的艺术设定,确实很适合用来体现 Cocos 引擎在 3D 上的进展

昨天「赛博朋克」 DEMO 发布后,我们收到了大量肯定,其中也有质疑声,甚至觉得这不可能吧,像做梦一样。对于 Cocos 在 3D 的研发投入,大家似乎是突然之间有了体会,自然也有疑虑。

点击观看 DEMO 用 Cocos Creator 的实时渲染效果

其实早在 v3.0 正式发布时,Cocos 便升级成为 2D & 3D 能力兼备的游戏引擎,不论是多后端渲染框架、还是所见即所得的编辑器,以及 PBR 物理渲染,已经让 Cocos 具备完整开发 3D 手游和小游戏的能力。

当版本升级到 v3.1,延时渲染管线的出现和 PhysX 物理支持,则让 Cocos 具备更大的底气,为 Cocos 在移动端挑战次世代品质的游戏画面奠定了基础。而与华为、字节跳动的深度合作,更是为 Cocos 开拓更多可能性——v3.2.0 的更新,让 Cocos 成为全球首家支持鸿蒙系统的游戏引擎,为之后的游戏领域布局,带来深远的影响。

今天,Cocos Creator 3.3 正式版来了。

这个版本里,基于对引擎性能提升的自信,以及之前对 3D 研发投入的厚积薄发,我们才制作了「赛博朋克」技术演示视频。下面我们就为大家详细介绍一下 Cocos Creator 3.3 带来的一些全新变化

性能优化: 欠各位的,今天还上

启动性能优化

此次更新,Cocos Creator 3.3 认真对引擎性能做了一波优化,特别是在小游戏平台。版本更新后,小游戏的启动性能、运行性能等都有了显著提升,其中在启动性能更是提升了60%。我们深知启动性能的水平直接影响到小游戏产品的买量转化问题,在CP和发行商谈判的时候就是产品生死问题。

在启动性能方面,我们升级了之前发布的小游戏「快上车」,可以很明显地看出,在最新的 v3.3 里,相较之前,项目升级后微信云测启动性能分达到83分,提升了60%。

运行性能优化

除了启动性能升,我们在运行性能上同样做出了不错的优化。以我们在 Cocos Store 发布的「奔跑吧小仙女」跑酷游戏为例,v3.3 的云测数据,和 v3.0 版相比,运行性能提升了34%。

物理性能优化

目前,微信小游戏全面支持了 WebAssembly (简称 wasm) 的运行,而 Cocos Creator 3.3 则支持在此基础上将 Bullet 以 WASM 的方式运行,使得 Bullet 的物理性能有很大提升,开发者可以用在更多复杂的物理场景。

我们和 ASMJS 版本测试对比,可以看出在 iOS 和安卓版本上,Wasm 版本的物理运行效率有了显著提升,在 iOS 上的提升尤其明显。同时,越复杂的场景提升越明显。在构建微信平台时,如果选择 Bullet 物理后端,我们会自动构建 WASM 包,非常方便,便于大家尝试更多复杂物理功能的游戏。

原生性能架构优化

同时,我们进一步提升了原生引擎的绑定层级,在渲染管线之上的渲染场景部分也完成了原生化,光源、模型等渲染对象的收集过程使用原生实现,进一步提升了原生平台的性能。

还有一个附带的好处,由于绑定层级的向上迁移,一些底层的数据共享机制被解除了,比如 Pass,SubModel  等。这使得 JS 引擎上层的实现尤其是 UI 和 2D 渲染合批相关的数据更加简化,部分高频操作的数据结构从 TypedArray 还原为直接量属性,使得 Web 和小游戏平台的性能也得到了可见的提升。

优化场景编辑:细节优化带来编辑体验感提升

我们在 v3.x 的引擎功能狂飙突进中,前期更注重实际功能的开发,而忽略了不少操作细节体验。在 v3.3 中,我们对场景编辑进行了一些相对应的优化:

1. 优化场景相机的漫游模式,并增加了加速开关;

2. 增加一个场景灯光的开关(默认打开);

3. 增加模型的最大最小坐标显示:

4. 增加 Transform Gizmo 的吸附功能(通过移动,旋转,缩放的 Gizmo 操作时,按住 Ctrl 键,就可以按设定的步长进行值的增长:

5. 优化大项目使用体验:降低编辑器内存使用,避免崩溃,优化卡顿。

新版动画编辑器和动画数据升级

目前动画编辑器已在动画编辑器内置曲线编辑,与时间轴匹配,并支持任意关键帧之间的时间曲线编辑。

同时,在 v3.3 中,我们也完成了动画数据的升级:引入了新的基础曲线类,重构了 AnimationClip,统一了动画和粒子系统使用的曲线数据。这些工作都是为了后续的完善动画系统而准备的,在后续版本我们将支持动画状态机编辑,Blend Tree 动画融合等高级功能。

阴影效果和设置优化

针对大家比较关注的阴影的配置,我们已经有完整的规划,并正在逐步完善。3.3 版本就首先简化阴影的配置,优化软阴影算法,修复阴影的部分效果问题。配置上的调整包含:

  • Shadow color 被迁移为 Shadow saturation 的灰度调节选项,会自动迁移老版本的 alpha 通道
  • 软阴影选项从之前的 X9,X25 等改为 Soft 和 Soft2X
  • 简化阴影贴图的尺寸设置为 High,Medium,Low
  • 去除 SelfShadow 选项,现在都会默认开启自阴影计算

物理系统完善

在 v3.1 支持 PhysX 物理后端以来,多套物理引擎的选择和使用也成为了我们重点关注的使用体验,在 v3.3 中我们尽可能统一了不同物理后端的物理表现。并且,还添加了对射击类和赛车类游戏非常关键的 CCD 持续碰撞检测能力。


“让游戏开发更简单”,这是 Cocos 一直秉持着做开源引擎的初衷。在 3D 游戏领域,Cocos 还有很长的一段路要走,我们正在做、未来也会一直坚持的是踏踏实实地把自身的技术打磨好,不断突破 Cocos 的技术上限,在为大家带来更丰富更强大功能的时候,不断降低游戏开发的门槛。

更多更新请查看 Cocos Creator 3.3 完整更新文档,也可前往官网浏览文档、下载最新版本。如果开发者们在升级中遇到困难,欢迎向我们反馈,我们会尽力协助。