Cocos Creator 3.3 今日發(fā)布,實(shí)現(xiàn) 3D 技術(shù)突破,優(yōu)化 2D 性能體驗(yàn)
在今年春節(jié)之后,我們就一直在想,用什么樣的藝術(shù)設(shè)計(jì)能更好地向大家展現(xiàn) Cocos 引擎的 3D 能力呢?當(dāng)時(shí)「賽博朋克2077」還在比較高的熱度上,我們也發(fā)現(xiàn)了賽博朋克世界里霓虹閃爍的光影,可添加幾乎無限的光源和各種反射,加上偏寫實(shí)但又有足夠創(chuàng)作空間的藝術(shù)設(shè)定,確實(shí)很適合用來體現(xiàn) Cocos 引擎在 3D 上的進(jìn)展。
昨天「賽博朋克」 DEMO 發(fā)布后,我們收到了大量肯定,其中也有質(zhì)疑聲,甚至覺得這不可能吧,像做夢(mèng)一樣。對(duì)于 Cocos 在 3D 的研發(fā)投入,大家似乎是突然之間有了體會(huì),自然也有疑慮。
其實(shí)早在 v3.0 正式發(fā)布時(shí),Cocos 便升級(jí)成為 2D & 3D 能力兼?zhèn)涞挠螒蛞?,不論是多后端渲染框架、還是所見即所得的編輯器,以及 PBR 物理渲染,已經(jīng)讓 Cocos 具備完整開發(fā) 3D 手游和小游戲的能力。
當(dāng)版本升級(jí)到 v3.1,延時(shí)渲染管線的出現(xiàn)和 PhysX 物理支持,則讓 Cocos 具備更大的底氣,為 Cocos 在移動(dòng)端挑戰(zhàn)次世代品質(zhì)的游戲畫面奠定了基礎(chǔ)。而與華為、字節(jié)跳動(dòng)的深度合作,更是為 Cocos 開拓更多可能性——v3.2.0 的更新,讓 Cocos 成為全球首家支持鴻蒙系統(tǒng)的游戲引擎,為之后的游戲領(lǐng)域布局,帶來深遠(yuǎn)的影響。
今天,Cocos Creator 3.3 正式版來了。
這個(gè)版本里,基于對(duì)引擎性能提升的自信,以及之前對(duì) 3D 研發(fā)投入的厚積薄發(fā),我們才制作了「賽博朋克」技術(shù)演示視頻。下面我們就為大家詳細(xì)介紹一下 Cocos Creator 3.3 帶來的一些全新變化:
性能優(yōu)化:
欠各位的,今天還上
啟動(dòng)性能優(yōu)化
此次更新,Cocos Creator 3.3 認(rèn)真對(duì)引擎性能做了一波優(yōu)化,特別是在小游戲平臺(tái)。版本更新后,小游戲的啟動(dòng)性能、運(yùn)行性能等都有了顯著提升,其中在啟動(dòng)性能更是提升了60%。我們深知啟動(dòng)性能的水平直接影響到小游戲產(chǎn)品的買量轉(zhuǎn)化問題,在CP和發(fā)行商談判的時(shí)候就是產(chǎn)品生死問題。
在啟動(dòng)性能方面,我們升級(jí)了之前發(fā)布的小游戲「快上車」,可以很明顯地看出,在最新的 v3.3 里,相較之前,項(xiàng)目升級(jí)后微信云測(cè)啟動(dòng)性能分達(dá)到83分,提升了60%。


運(yùn)行性能優(yōu)化
除了啟動(dòng)性能升,我們?cè)谶\(yùn)行性能上同樣做出了不錯(cuò)的優(yōu)化。以我們?cè)?Cocos Store 發(fā)布的「奔跑吧小仙女」跑酷游戲?yàn)槔?,v3.3 的云測(cè)數(shù)據(jù),和 v3.0 版相比,運(yùn)行性能提升了34%。


物理性能優(yōu)化
目前,微信小游戲全面支持了 WebAssembly (簡(jiǎn)稱 wasm) 的運(yùn)行,而 Cocos Creator 3.3 則支持在此基礎(chǔ)上將 Bullet 以 WASM 的方式運(yùn)行,使得 Bullet 的物理性能有很大提升,開發(fā)者可以用在更多復(fù)雜的物理場(chǎng)景。
我們和 ASMJS 版本測(cè)試對(duì)比,可以看出在 iOS 和安卓版本上,Wasm 版本的物理運(yùn)行效率有了顯著提升,在 iOS 上的提升尤其明顯。同時(shí),越復(fù)雜的場(chǎng)景提升越明顯。在構(gòu)建微信平臺(tái)時(shí),如果選擇 Bullet 物理后端,可以在構(gòu)建時(shí)選擇構(gòu)建 WASM 版本,非常方便,便于大家嘗試更多復(fù)雜物理功能的游戲。

原生性能架構(gòu)優(yōu)化
同時(shí),我們進(jìn)一步提升了原生引擎的綁定層級(jí),在渲染管線之上的渲染場(chǎng)景部分也完成了原生化,光源、模型等渲染對(duì)象的收集過程使用原生實(shí)現(xiàn),進(jìn)一步提升了原生平臺(tái)的性能。
還有一個(gè)附帶的好處,由于綁定層級(jí)的向上遷移,一些底層的數(shù)據(jù)共享機(jī)制被解除了,比如 Pass,SubModel 等。這使得 JS 引擎上層的實(shí)現(xiàn)尤其是 UI 和 2D 渲染合批相關(guān)的數(shù)據(jù)更加簡(jiǎn)化,部分高頻操作的數(shù)據(jù)結(jié)構(gòu)從 TypedArray 還原為直接量屬性,使得 Web 和小游戲平臺(tái)的性能也得到了可見的提升。
優(yōu)化場(chǎng)景編輯:
細(xì)節(jié)優(yōu)化帶來編輯體驗(yàn)感提升
我們?cè)?v3.x 的引擎功能狂飆突進(jìn)中,前期更注重實(shí)際功能的開發(fā),而忽略了不少操作細(xì)節(jié)體驗(yàn)。在 v3.3 中,我們對(duì)場(chǎng)景編輯進(jìn)行了一些相對(duì)應(yīng)的優(yōu)化:
1. 優(yōu)化場(chǎng)景相機(jī)的漫游模式,并增加了加速開關(guān):
2. 增加一個(gè)場(chǎng)景燈光的開關(guān)(默認(rèn)打開):

3. 增加模型的最大最小坐標(biāo)顯示:

4. 增加 Transform Gizmo 的吸附功能(通過移動(dòng),旋轉(zhuǎn),縮放的 Gizmo 操作時(shí),按住 Ctrl 鍵,就可以按設(shè)定的步長進(jìn)行值的增長:

5. 優(yōu)化大項(xiàng)目使用體驗(yàn):降低編輯器內(nèi)存使用,避免崩潰,優(yōu)化卡頓。
新版動(dòng)畫編輯器
動(dòng)畫數(shù)據(jù)升級(jí)
目前動(dòng)畫編輯器已在動(dòng)畫編輯器內(nèi)置曲線編輯,與時(shí)間軸匹配,并支持任意關(guān)鍵幀之間的時(shí)間曲線編輯。

同時(shí),在 v3.3 中,我們也完成了動(dòng)畫數(shù)據(jù)的升級(jí):引入了新的基礎(chǔ)曲線類,重構(gòu)了 AnimationClip,統(tǒng)一了動(dòng)畫和粒子系統(tǒng)使用的曲線數(shù)據(jù)。這些工作都是為了后續(xù)的完善動(dòng)畫系統(tǒng)而準(zhǔn)備的,在后續(xù)版本我們將支持動(dòng)畫狀態(tài)機(jī)編輯,Blend Tree 動(dòng)畫融合等高級(jí)功能。
陰影效果和設(shè)置優(yōu)化
針對(duì)大家比較關(guān)注的陰影的配置,我們已經(jīng)有完整的規(guī)劃,并正在逐步完善。3.3 版本就首先簡(jiǎn)化陰影的配置,優(yōu)化軟陰影算法,修復(fù)陰影的部分效果問題。配置上的調(diào)整包含:
Shadow color 被遷移為 Shadow saturation 的灰度調(diào)節(jié)選項(xiàng),會(huì)自動(dòng)遷移老版本的 alpha 通道
軟陰影選項(xiàng)從之前的 X9,X25 等改為 Soft 和 Soft2X
簡(jiǎn)化陰影貼圖的尺寸設(shè)置為 High,Medium,Low
去除 SelfShadow 選項(xiàng),現(xiàn)在都會(huì)默認(rèn)開啟自陰影計(jì)算

物理系統(tǒng)完善
在 v3.1 支持 PhysX 物理后端以來,多套物理引擎的選擇和使用也成為了我們重點(diǎn)關(guān)注的使用體驗(yàn),在 v3.3 中我們盡可能統(tǒng)一了不同物理后端的物理表現(xiàn)。并且,還添加了對(duì)射擊類和賽車類游戲非常關(guān)鍵的 CCD 持續(xù)碰撞檢測(cè)能力。

“讓游戲開發(fā)更簡(jiǎn)單”,這是 Cocos 一直秉持著做開源引擎的初衷。在 3D 游戲領(lǐng)域,Cocos 還有很長的一段路要走,我們正在做、未來也會(huì)一直堅(jiān)持的是踏踏實(shí)實(shí)地把自身的技術(shù)打磨好,不斷突破 Cocos 的技術(shù)上限,在為大家?guī)砀S富更強(qiáng)大功能的時(shí)候,不斷降低游戲開發(fā)的門檻。
此次我們還有許多更新,點(diǎn)擊【閱讀原文】查看 Cocos Creator 3.3 完整更新文檔,也可通過官網(wǎng)的 Creator 下載頁面瀏覽查看。
歡迎前往官網(wǎng)下載最新版本,如果開發(fā)者們?cè)谏?jí)中遇到困難,歡迎向我們反饋,我們會(huì)盡力協(xié)助。下載地址:
https://www.cocos.com/creator



