Cocos Creator是一款游戲編程開(kāi)發(fā)引擎,基于 Cocos2d-x,組件化,腳本化,數(shù)據(jù)驅(qū)動(dòng),跨平臺(tái)發(fā)布,于開(kāi)源框架Cocos2d-x,實(shí)現(xiàn)了一體化、可擴(kuò)展、可自定義工作流的編輯器,并在Cocos系列產(chǎn)品中第一次引入了組件化編程思想和數(shù)據(jù)驅(qū)動(dòng)的架構(gòu)設(shè)計(jì)。
Cocos Creator特色介紹
1、腳本中可以輕松聲明可以在編輯器中隨時(shí)調(diào)整的數(shù)據(jù)屬性,對(duì)參數(shù)的調(diào)整可以由設(shè)計(jì)人員獨(dú)立完成。
2、支持智能畫(huà)布適配和免編程元素對(duì)齊的 UI 系統(tǒng)可以完美適配任意分辨率的設(shè)備屏幕。
3、專(zhuān)為 2D 游戲打造的動(dòng)畫(huà)系統(tǒng),支持動(dòng)畫(huà)軌跡預(yù)覽和復(fù)雜曲線編輯功能。
4、動(dòng)態(tài)語(yǔ)言支持的腳本化開(kāi)發(fā),使得動(dòng)態(tài)調(diào)試和移動(dòng)設(shè)備遠(yuǎn)程調(diào)試變得異常輕松。
5、借助 Cocos2d-x 引擎,在享受腳本化開(kāi)發(fā)的便捷同時(shí),還能夠一鍵發(fā)布到各類(lèi)桌面和移動(dòng)端平臺(tái),并保持原生級(jí)別的超高性能
6、腳本組件化和開(kāi)放式的插件系統(tǒng)為開(kāi)發(fā)者在不同深度上提供了定制工作流的方法,編輯器可以大尺度調(diào)教來(lái)適應(yīng)不同團(tuán)隊(duì)和項(xiàng)目的需要。
Cocos Creator v1.5 主要更新亮點(diǎn)
- 集成Box2D物理引擎 ,加入剛體和關(guān)節(jié)組件
- 加入攝像機(jī)組件,可以在無(wú)損性能的情況下支持高速卷屏
- TypeScript和ES6 Class支持,全面強(qiáng)化IDE代碼提示
- 優(yōu)化場(chǎng)景加載流程,場(chǎng)景加載速度提高38%
- 跨項(xiàng)目導(dǎo)出/導(dǎo)入資源,自動(dòng)關(guān)聯(lián)資源依賴(lài)
- 增強(qiáng)Label和EditBox在Windows桌面平臺(tái)和Android平臺(tái)的使用體驗(yàn)和兼容性
- 熱更新支持中斷后續(xù)傳
Cocos Creator v1.5重點(diǎn)功能更新
集成 Box2D 物理引擎
Cocos Creator 在 1.5 版本中終于集成了知名的物理引擎 [Box2D](https://github.com/erincatto/Box2D),這款容易上手功能強(qiáng)大的物理引擎將為 Cocos Creator 帶來(lái)全面的物理檢測(cè)和運(yùn)算能力,全面支持你的動(dòng)作和物理游戲。
除去通用的物理引擎功能之外,Cocos Creator 集成后的物理系統(tǒng)中還加入了剛體(Rigidbody)和關(guān)節(jié)(Joint)組件,加上專(zhuān)門(mén)為物理引擎定制的碰撞體(Collider)組件,我們僅僅通過(guò)在場(chǎng)景中擺放各種不同的物理組件,就可以實(shí)現(xiàn)有趣的交互效果了。配合新加入的 Camera 攝像機(jī)組件,在編輯器中完成豐富關(guān)卡內(nèi)容的平臺(tái)動(dòng)作卷屏游戲?qū)?huì)非常輕松!
攝像機(jī)組件
開(kāi)發(fā)動(dòng)作和冒險(xiǎn)類(lèi)游戲時(shí),視角的移動(dòng)和場(chǎng)景的卷屏必不可少,之前開(kāi)發(fā)者們只能通過(guò)整體移動(dòng)場(chǎng)景里所有節(jié)點(diǎn)來(lái)模擬視角移動(dòng)的效果,但大量節(jié)點(diǎn)位移的運(yùn)算會(huì)影響性能,尤其是在加入物理引擎之后,每次移動(dòng)碰撞體都會(huì)導(dǎo)致重新生成和計(jì)算物理世界。
而在 1.5 版本中加入的 Camera 組件就能夠完美解決視角移動(dòng)的問(wèn)題,Camera 組件中可以指定一個(gè)或多個(gè)節(jié)點(diǎn)作為被攝像機(jī)渲染的目標(biāo),將場(chǎng)景的根節(jié)點(diǎn)拖拽到 Camera 的目標(biāo)列表中,之后移動(dòng) Camera 組件所在節(jié)點(diǎn),就可以實(shí)現(xiàn)場(chǎng)景卷屏的效果。Camera 的渲染是通過(guò)矩陣運(yùn)算來(lái)實(shí)現(xiàn)的,因此不會(huì)對(duì)場(chǎng)景中的運(yùn)動(dòng)計(jì)算帶來(lái)額外的開(kāi)銷(xiāo),可以說(shuō)是 2D 動(dòng)作游戲卷屏的完美解決方案!
TypeScript 和 ES6 Class 支持
為了更好的支持各類(lèi) IDE(如 VS Code, WebStorm 等)里的游戲腳本代碼提示,我們?cè)?1.5 版對(duì) cc.Class 的聲明方式進(jìn)行了一次重構(gòu),現(xiàn)在可以在 Cocos Creator 項(xiàng)目里使用 ES6 Class 或 TypeScript 來(lái)聲明組件和編寫(xiě)游戲邏輯了。
之前很多有靜態(tài)語(yǔ)言使用經(jīng)驗(yàn)的用戶(hù)在上手 Creator 時(shí)反饋代碼提示和自動(dòng)完成功能較差,無(wú)法準(zhǔn)確的提示組件的成員屬性和方法,以及引用其他腳本時(shí)也無(wú)法提示被引用腳本里的成員。這主要是由于編輯器序列化數(shù)據(jù)需要的特殊聲明格式和各大 IDE 能夠識(shí)別的原生語(yǔ)法不符合。而在這次重構(gòu)中我們引入了裝飾器語(yǔ)法來(lái)幫助編輯器進(jìn)行數(shù)據(jù)識(shí)別,之后我們就可以使用 ES6 和 TypeScript 的標(biāo)準(zhǔn)語(yǔ)法聲明 cc.Class 和 cc.Component 了。使用標(biāo)準(zhǔn)語(yǔ)法聲明的 cc.Class 所有成員類(lèi)型都能夠被各種主流 IDE 自動(dòng)識(shí)別,加上引擎 API 類(lèi)型聲明文件 creator.d.ts,使得目前 Creator 腳本開(kāi)發(fā)時(shí)可以正確提示幾乎所有的相關(guān)接口代碼!
TypeScript 支持強(qiáng)類(lèi)型聲明,對(duì)于多人協(xié)作開(kāi)發(fā)的大型項(xiàng)目來(lái)說(shuō),也能夠提供更準(zhǔn)確的接口通訊規(guī)范和錯(cuò)誤報(bào)告。推薦有相關(guān)強(qiáng)類(lèi)型語(yǔ)言開(kāi)發(fā)經(jīng)驗(yàn)和大型項(xiàng)目的技術(shù)團(tuán)隊(duì)嘗試!
場(chǎng)景加載速度提升 38%
Web 版游戲的最大優(yōu)勢(shì)就是免安裝,即開(kāi)即玩,因此 web 版游戲場(chǎng)景的加載速度,尤其是初始場(chǎng)景的加載速度對(duì)于用戶(hù)體驗(yàn)和留存都至關(guān)重要。本次更新在場(chǎng)景資源加載方面進(jìn)行了大幅優(yōu)化,使用對(duì)象池讓原來(lái)在 uuid-loader 和 deserialize(反序列化)模塊中的對(duì)象創(chuàng)建頻率大大減少,在本地預(yù)覽時(shí)場(chǎng)景加載速度提升幅度達(dá)到 38%。但實(shí)際項(xiàng)目中加載速度的瓶頸可能來(lái)自網(wǎng)絡(luò)連接速度,所以實(shí)際游戲中的提升幅度可能沒(méi)這么大,但基本也能有 200ms~300ms 以上提升。
跨項(xiàng)目資源導(dǎo)入/導(dǎo)出共享
在前一個(gè)版本中,我們通過(guò)擴(kuò)展插件的系統(tǒng)實(shí)現(xiàn)了項(xiàng)目間共享一個(gè)資源路徑的功能,但還有更多朋友希望我們能夠提供一種更簡(jiǎn)單直接的,跨項(xiàng)目導(dǎo)入導(dǎo)出資源的機(jī)制,來(lái)實(shí)現(xiàn)將已有項(xiàng)目中的資源導(dǎo)入到新項(xiàng)目,或者美術(shù)人員和開(kāi)發(fā)人員的項(xiàng)目分開(kāi),并通過(guò)導(dǎo)出導(dǎo)入來(lái)生產(chǎn)和整合美術(shù)資源的生產(chǎn)線。
通過(guò)主菜單的「文件 -> 導(dǎo)入/導(dǎo)出資源」打開(kāi)的資源導(dǎo)入導(dǎo)出工具,我們可以輕松的導(dǎo)出場(chǎng)景或 Prefab,選擇導(dǎo)出目標(biāo)后會(huì)自動(dòng)列出該場(chǎng)景和 Prefab 依賴(lài)的資源,導(dǎo)出時(shí)自動(dòng)生成 zip 包。在另一個(gè)項(xiàng)目中導(dǎo)入該 zip 包即可。如果遇到 uuid 沖突還可以選擇自動(dòng)更新 uuid 以保留兩個(gè)版本的資源。
- PC官方版
- 安卓官方手機(jī)版
- IOS官方手機(jī)版