新年新版,新鋒淬礪:Cocos Creator v1.4發(fā)布
- 來源:未知
- 作者:Viiaa
- 編輯:Viiaa
春暖花開之際,醞釀許久的Cocos Creator v1.4 正式發(fā)布。這次,我們拿出了史上最長(zhǎng)的改動(dòng)列表:實(shí)例化性能提升80%以上,動(dòng)畫、UI再增強(qiáng),眾所期待的插件商店、熱更新表現(xiàn)優(yōu)化......相信滿載功能的Cocos Creator v1.4 會(huì)為你的2017注入全新動(dòng)力。
Cocos Creator v1.4 主要更新亮點(diǎn)包括:
· 性能大幅提升,原生平臺(tái)提升80%以上、H5平臺(tái)提升超過50%
· 支持Spine和DragonBones最新版本,支持網(wǎng)格動(dòng)畫,讓動(dòng)畫栩栩如生
· UI 文字顯示增強(qiáng),支持批量渲染
· 插件商店上線,新插件開發(fā)工作流程公布
· 熱更新問題修復(fù),接口增強(qiáng)
· 增加原生音頻軟解碼方案,提高兼容性
· 支持VS Code 調(diào)試網(wǎng)頁版游戲
Cocos Creator v1.4下載地址:
http://www.cocos.com/download
除了已經(jīng)確定會(huì)隨 1.4 版本發(fā)布的功能外,其他社區(qū)期待度很高的功能也在這個(gè)周期內(nèi)進(jìn)行了前期開發(fā),比如物理引擎就確定能夠在 1.5 版本和大家見面。未來一段時(shí)間我們的工作重點(diǎn)仍然是提升引擎性能和編輯器穩(wěn)定性,更多的功能擴(kuò)展將轉(zhuǎn)移到插件系統(tǒng)中實(shí)現(xiàn),并通過插件商店和大家見面。
下面我們將詳細(xì)介紹 Cocos Creator v1.4 版本的重大改動(dòng)。
性能大幅提升,原生平臺(tái)提升80%以上、H5平臺(tái)提升超過50%
節(jié)點(diǎn)實(shí)例化是游戲開發(fā)中必不可少的程序操作,即使使用了如節(jié)點(diǎn)池之類循環(huán)使用節(jié)點(diǎn)的方法,實(shí)例化的效率也關(guān)系到加載和初始化場(chǎng)景時(shí)的等待時(shí)間。
在 1.4 中我們針對(duì)實(shí)例化操作進(jìn)行了兩方面的優(yōu)化:預(yù)編譯 CCClass 構(gòu)造函數(shù),加快創(chuàng)建 Class 的速度;拷貝對(duì)象時(shí)不再進(jìn)行屬性判斷。在原生平臺(tái)上達(dá)到了 80% 以上的性能提升,在其他平臺(tái)提升也超過了 50%,詳見下圖。
除了運(yùn)行時(shí)能夠享受到的巨大性能提升之外,此次優(yōu)化也大幅提升了編輯器中打開復(fù)雜場(chǎng)景時(shí)的速度。
另外針對(duì) Web 平臺(tái),我們也合并了 Cocos2d-x 3.14 版本中的重要優(yōu)化,包括:
· 減少 visit 的調(diào)用棧深度
· 減少 onEnter/onExit/cleanup 的調(diào)用棧深度
· 降低 ActionManager/Scheduler/EventManager 的內(nèi)存使用
· 降低 Color 內(nèi)存使用
· 優(yōu)化 RenderCmd 和 SGNode 構(gòu)造性能
· 減少 updateProjectionUniform 調(diào)用
· 優(yōu)化 Vertex 數(shù)據(jù)計(jì)算性能
支持Spine和DragonBones最新版本、網(wǎng)格動(dòng)畫,讓動(dòng)畫栩栩如生
骨骼動(dòng)畫中使用網(wǎng)格渲染(Mesh)來提升表現(xiàn)力已經(jīng)越來越常見了,因此從推出 Spine 骨骼動(dòng)畫支持開始,社區(qū)內(nèi)要求支持網(wǎng)格渲染的呼聲就一浪高過一浪。1.4版本的引擎中一次性的升級(jí)了 Spine 和 DragonBones 兩大骨骼動(dòng)畫格式的運(yùn)行時(shí)庫,在 WebGL 渲染模式和原生平臺(tái)上都可以完美顯示網(wǎng)格渲染了。
要注意的是由于 Spine 和 DragonBones 的運(yùn)行庫都升級(jí)到了最新版本,所以在生產(chǎn)動(dòng)畫數(shù)據(jù)的時(shí)候也需要最新版本的 Spine 和 DragonBones 軟件才能正常使用。另外 Canvas 渲染模式是不支持網(wǎng)格的,只能在 WebGL 和原生平臺(tái)使用。
UI 文字顯示增強(qiáng),支持批量渲染
UI 方面最大的進(jìn)步在于位圖字體現(xiàn)在可以參與批量渲染了!批量渲染的原則和 Sprite 相同,也就是共享同一張貼圖的所有 Label 和 Sprite,只要他們中間沒有插入使用其他貼圖的渲染內(nèi)容,就可以在一個(gè)渲染批次中完成。
現(xiàn)在用一個(gè) draw call 畫出整個(gè)背包界面也不是夢(mèng)想了,只要如下圖所示,把位圖字體和對(duì)應(yīng)的貼圖,和其他 UI 用的貼圖打包成一個(gè)圖集,然后在 WebGL 和原生環(huán)境下就會(huì)自動(dòng)進(jìn)行批量渲染。
上圖中我們用了編輯器自帶的自動(dòng)圖集功能,將同一個(gè)文件夾下的 Sprite 貼圖和位圖字體貼圖進(jìn)行了打包,這種情況下要構(gòu)建項(xiàng)目后才能看到批量渲染的效果。
除此之外 UI 方面的增強(qiáng)還包括:
· 新增藝術(shù)數(shù)字資源(LabelAtlas),直接拖拽到 Label 組件里的 font 屬性就可以使用
· 大幅提高了 EditBox 的穩(wěn)定性,修復(fù)了多個(gè)平臺(tái)上的各種問題
· RichText 增加描邊功能,使用標(biāo)簽
· Widget 支持指定對(duì)齊對(duì)象
插件商店上線,新插件開發(fā)工作流程公布
插件商店正式上線了,目前可以在商店里看到由 Creator 開發(fā)團(tuán)隊(duì)業(yè)余時(shí)間開發(fā)的十幾個(gè)編輯器插件,使用 Cocos 開發(fā)者帳號(hào)登錄編輯器后即可進(jìn)行自動(dòng)化的下載安裝。
盡管 Creator 早就開放了插件系統(tǒng),但相關(guān)的接口和文檔仍然一直在完善過程中。隨著 1.4 版本插件商店正式上線,我們也新增了兩個(gè)重要的插件系統(tǒng)工作流程:
· 可以在插件中包括運(yùn)行時(shí)的組件和資源,這些組件和資源在加載插件后就會(huì)自動(dòng)載入項(xiàng)目數(shù)據(jù)庫,方便用戶在多個(gè)項(xiàng)目之間共享控件和資源。
· 插件中可以調(diào)用引擎接口來訪問場(chǎng)景中的節(jié)點(diǎn)、組件和其他運(yùn)行時(shí)腳本
這兩個(gè)全新的工作流程將使得插件更容易對(duì)場(chǎng)景和資源進(jìn)行自動(dòng)化的管理,增強(qiáng)插件系統(tǒng)在普通游戲項(xiàng)目中的實(shí)用性。插件商店上線后也歡迎開發(fā)者們提交自己的插件,通過這個(gè)平臺(tái)和社區(qū)一起共享知識(shí)和資源。
在后續(xù)版本中我們會(huì)持續(xù)對(duì)插件系統(tǒng)的接口進(jìn)行增強(qiáng)和完善。
熱更新問題修復(fù),接口增強(qiáng)
1.4 版本中我們開始對(duì)熱更新進(jìn)行整改,這個(gè)階段主要修復(fù) bug 和完善熱更新接口的原生綁定,以方便開發(fā)者自己定制熱更新行為,具體的改動(dòng)包括:
· (重要)徹底隔離臨時(shí)更新文件夾和本地緩存文件夾,避免前者失敗時(shí)污染后者,在確認(rèn)新版本更新完成時(shí)才會(huì)將臨時(shí)更新文件夾合并到本地緩存文件夾中(不會(huì)刪除舊的本地緩存文件)
· (重要)綁定 Downloader file task 接口(不支持 data task)
· (重要)壓縮文件的解壓邏輯前置到 fileSuccess 之前,保障解壓成功才算是文件正確更新
· 用 manifest 中的 size 字段來收集文件大小數(shù)據(jù),更快獲得準(zhǔn)確的字節(jié)級(jí)進(jìn)度
· 修復(fù) Android 斷點(diǎn)續(xù)傳支持和一些特殊情況下的更新 bug
· 支持 manifest 間比較的 API:setVersionCompareHandle
· 支持下載文件后的校驗(yàn)回調(diào):setVerifyCallback
· 支持設(shè)置更新時(shí)最大文件并發(fā)數(shù) setMaxConcurrentTask
· 保障 tempManifest 的正確保存,使得進(jìn)度信息可以正確存儲(chǔ)
· 延遲文件請(qǐng)求到文件夾創(chuàng)建邏輯之后,確保路徑正常
· 讀取 App Package 內(nèi)部 manifest 時(shí)強(qiáng)制清空 search path,避免讀取到緩存 manifest
后續(xù)我們還會(huì)結(jié)合編輯器進(jìn)一步改善熱更新工作流程,包括提供插件自動(dòng)生成 manifest 文件,以及支持通過編輯器定義資源包,進(jìn)行多份 manifest 的可選擇更新等等,敬請(qǐng)期待。
增加原生音頻軟解碼方案,提高兼容性
由于音頻解碼程序和部分安卓芯片不兼容,為了解決在部分安卓系統(tǒng)上播放音頻時(shí)出現(xiàn)的崩潰問題,我們新增了兩個(gè)軟件解碼的第三方庫,分別對(duì)應(yīng) mp3 和 ogg 格式,使用軟件解碼也同時(shí)會(huì)提升播放以上格式音頻時(shí)的效率。
支持VS Code 調(diào)試網(wǎng)頁版游戲
VS Code 是 Creator 的首選編程開發(fā)工具,但之前的版本中調(diào)試游戲程序時(shí)只能使用 Chrome 內(nèi)置的 DevTools 工具,調(diào)試時(shí)不能對(duì)源碼進(jìn)行即時(shí)的修改,另外瀏覽器調(diào)試也容易占用過多資源造成卡頓。
在 1.4 版本中我們?cè)黾恿?VS Code 的調(diào)試工作流程,通過菜單一鍵配置調(diào)試參數(shù),并且改善了編譯腳本后的 sourcemap 生成邏輯,減少錯(cuò)誤?,F(xiàn)在可以通過 VS Code 對(duì)網(wǎng)頁版游戲進(jìn)行完整的調(diào)試工作流程了!
Cocos Creator v1.4下載地址:
http://www.cocos.com/download

玩家點(diǎn)評(píng) (0人參與,0條評(píng)論)
熱門評(píng)論
全部評(píng)論