Cocos 2d-JS將默認(rèn)開(kāi)啟iOS 8 WebGL完美支持
近日,蘋(píng)果iOS 8系統(tǒng)的發(fā)布引來(lái)眾多果粉為之瘋狂,而對(duì)于手機(jī)網(wǎng)頁(yè)游戲的開(kāi)發(fā)者而言,iOS 8更帶來(lái)了網(wǎng)頁(yè)游戲開(kāi)發(fā)的新潛能。在iOS 8中,Safari開(kāi)始支持WebGL,相較之前性能較低的Canvas繪圖模式,幀率的數(shù)倍提升將給用戶帶來(lái)更加流暢的游戲體驗(yàn)。
作為開(kāi)源游戲引擎Cocos 2d-x的JavaScript版本,Cocos 2d-JS 順應(yīng)開(kāi)發(fā)者需求,將默認(rèn)開(kāi)啟WebGL模式對(duì)iOS 8設(shè)備的支持。開(kāi)啟后游戲無(wú)需任何修改,即可直接***支持iOS 8 WebGL,享受精靈、動(dòng)畫(huà)、粒子等全方位的渲染性能提升。
➢ 精靈繪制 性能飆升
當(dāng)一個(gè)屏幕中容納2600個(gè)圖片精靈同時(shí)運(yùn)行時(shí),Cocos 2d-JS支持的iOS 8 WebGL性能比以往Canvas模式有顯著提升,可輕易達(dá)成FPS 60滿幀運(yùn)行(如上圖)。
原Canvas繪制模式下,每秒幀率僅可達(dá)到FPS 10-15(一般而言,頁(yè)面幀率低于FPS 30時(shí)用戶體驗(yàn)已無(wú)法接受),而WebGL的出現(xiàn)圓滿地解決了此項(xiàng)問(wèn)題——開(kāi)發(fā)者再也不用單純?yōu)榱诵阅芏ハ拗朴螒蛑械娘@示元素?cái)?shù)量。
經(jīng)測(cè)試,若一個(gè)屏幕中的精靈數(shù)量進(jìn)一步增加至3000個(gè),Cocos 2d-JS支持的iOS 8 WebGL也可穩(wěn)定達(dá)成FPS 55至60幀的運(yùn)行性能。目前,即便是最暢銷(xiāo)的原生商業(yè)游戲,如《刀塔傳奇》,最多也只需要在同屏中運(yùn)行幾百個(gè)元素。
➢ 動(dòng)畫(huà)性能翻番
在一個(gè)屏幕同時(shí)運(yùn)行600個(gè)動(dòng)畫(huà)的性能測(cè)試中,Cocos 2d-JS支持的iOS 8 WebGL 帶來(lái)的幀率提升也達(dá)到2倍左右。
➢ 粒子特效 破冰式滿幀支持
而針對(duì)原先在iOS Canvas中幾乎無(wú)法運(yùn)行、僅一兩百個(gè)便卡死的炫酷粒子特效,Cocos 2d-JS 支持的iOS 8 WebGL更將帶來(lái)破冰式的FPS 60滿幀運(yùn)行體驗(yàn),運(yùn)行上千個(gè)粒子毫無(wú)壓力。
在iPhone 5s設(shè)備上,同屏運(yùn)行1800個(gè)粒子的性能測(cè)試可達(dá)到FPS 60,同屏運(yùn)行2600個(gè)粒子可達(dá)到FPS 30;而在iPhone 5設(shè)備上,同屏運(yùn)行1000個(gè)粒子的性能測(cè)試可達(dá)到FPS 60,同屏運(yùn)行2600個(gè)粒子可達(dá)到FPS 30。這意味著開(kāi)發(fā)者在游戲中甚至可以全屏使用酷炫的粒子特效,增強(qiáng)游戲的畫(huà)面表現(xiàn)力。
除了性能方面的巨大提升,Cocos 2d-JS的屏幕適配策略也將為開(kāi)發(fā)者帶來(lái)便利,***適配iPhone 6的4.7英寸分辨率以及1334*750 屏幕。Cocos 2d-JS團(tuán)隊(duì)針對(duì)下一個(gè)版本v3.1,更新了示例游戲Demo《Moon Warriors》。
(Cocos 2d-JS示例游戲《Moon Warriors》運(yùn)行截圖)
經(jīng)過(guò)提升分辨率、美化資源之后,《Moon Warriors》可順暢地運(yùn)行在iOS 8 WebGL上,繪制一幀的時(shí)間僅需0.005秒,幀率也輕松保持在FPS 60滿幀,WebGL帶來(lái)的***的流暢度將滿足用戶越來(lái)越苛刻的游戲體驗(yàn)需求。
據(jù)悉,Cocos 2d-JS v3.1將于10月中下旬正式發(fā)布。屆時(shí),開(kāi)發(fā)者無(wú)需修改任何代碼,就可以享受在iOS 8上的巨大性能提升。WebGL渲染的開(kāi)啟加上瀏覽器中JavaScript引擎性能的不斷提升,未來(lái)的移動(dòng)Web平臺(tái)給人帶來(lái)美好的想象空間。Cocos 2d-JS將與iOS 8 WebGL一起為用戶提供全新的流暢體驗(yàn),為開(kāi)發(fā)者帶來(lái)更為廣闊的發(fā)揮空間。
Cocos 2d-JS快速入門(mén):http://www.cocos2d-x.org/docs/manual/framework/html5/zh
Cocos 2d-JS中文論壇:http://www.cocoachina.com/bbs/thread.php?fid=59