成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Cocos2d-JS v3.1圖形渲染新進化 性能提升50%

云計算 游戲開發
Cocos2d-JS是整合了Cocos2d-html5和Cocos2d-x JavaScript Bindings(JSB)的游戲引擎,擁有清晰的工作流,提供一致的開發體驗,一次編碼可將游戲同時部署在網頁和原生應用渠道。

 Cocos2d-JS是整合了Cocos2d-html5和Cocos2d-x JavaScript Bindings(JSB)的游戲引擎,擁有清晰的工作流,提供一致的開發體驗,一次編碼可將游戲同時部署在網頁和原生應用渠道。

JSB腳本綁定跨平臺方案是所有HTML5游戲跨原生平臺解決方案中最高效的,其運行效率比其他類型解決方案更快數十倍、數百倍,接近原生應用的性能表現。不僅如此,在Cocos2d-x JSB在開啟了baseline compiler之后,JSB 在android平臺上的運行效率又有了質的飛躍,實測其性能表現已經超越了Lua,看來github上JS語言強勢流行也不是沒有道理的。

在移動網頁游戲的性能改進方面,Cocos2d-JS團隊經過不懈努力和反復嘗試,終于成功對v3.1版本的圖像渲染進行了更新升級,改進后的Canvas模式渲染效率大幅提升,實測數據顯示其性能相比v2.x版本最大可達到50%的提升幅度。具體測試情況見下圖:

 

性能測試對比:手機上300個靜態Sprite

性能測試對比:手機上200個Sprite進行縮放、旋轉

v3.1渲染框架更新:更加清晰 更易維護

Cocos2d-JS原v2.x版本中,渲染流程的每一幀都要以樹形遍歷的方式(visit),將場景中所有節點都訪問到,查詢是否需要調用矩陣變換函數(transform), 并需對子節點進行排序并進一步遍歷之后,才能調用當前節點渲染函數展現在屏幕上。在游戲的層級較多的情況下,這樣的做法可能帶來很大的消耗——本身沒有繪制圖形功能的層、節點、場景容器等需調用下文進行保存與恢復,這些系統API調用將耗費多余的資源——而在實際的游戲應用場景中,多層級是非常普遍的。

針對于此,Cocos2d-JS團隊進行了各種相關的性能實驗,并得出可喜的結果:

➢ 將“全局坐標計算”與“逐層調用矩陣變換函數”方式進行比較后,發現前者耗費的時間僅為后者的一半左右

➢ 在UI較多的游戲中,若將那些不包括變形、旋轉等復雜操作的“路人甲”型元素進行設置全局坐標,可省下重新計算坐標的調用消耗,直接使用渲染圖形的方法即可將它們畫出

根據實驗結果,Cocos2d-JS團隊對渲染框架進行了升級改進(如下圖所示)。可以看出,抽象出統一的渲染層后,v3.1的框架設計更加簡潔,層次更加清晰,更加易于維護。

V2.x(左)與V3.1(右)渲染框架范例圖對比

3.1渲染流程升級:渲染隊列 未來可支持自動批量渲染

根據最新的渲染框架,Cocos2d-JS v3.1對流程設計也進行了優化升級(新舊流程圖對比如下)。

(原版)V2.x渲染流程圖

(新版)V3.1渲染流程圖

新渲染流程主要有以下優勢:

➢ 引入渲染對象與全局坐標計算——只有需要繪制的對象才加入隊列中,采用整體渲染過程更加高效,避免了多余的上下文保存恢復與坐標計算等操作

➢ 避免重復調用遍歷函數——在沒有進行節點添加、節點刪除時,避免調用遍歷函數等不必要的循環與查詢

➢ 方便進行不同渲染模式切換——游戲元素管理與渲染處理層次更加清晰,職責更加分明,方便進行Canvas與WebGL渲染模式切換

在新的渲染設計中,增加了一個渲染命令對象,將代替原來的渲染函數進行繪圖。新的渲染命令可將各個渲染對象加入到渲染隊列,進行統一管理,并提供全局世界坐標。

渲染隊列只在子節點變化時才需要更新隊列,使得執行更加高效,并節省重復計算資源,提升渲染性能。渲染隊列的管理方式可幫助優化渲染算法與碰撞檢測(如紋理自動批量渲染合并等),可方便地進行瓦片地圖(TileMap)算法改進,提升使用大地圖時的性能表現,未來也可加入單獨的渲染線程。

此外,新圖像渲染設計還可支持WebGL模式的自動批量渲染,為圖形渲染提速奠定了堅實基礎。開發中可避免頻繁的渲染節點添加、刪除動作,通過重用已有節點來進一步提升性能。可重用的對象在不用的時候可以設置隱藏,加入緩存池,等待重用。

通過更加智能、高效渲染模式,Cocos2d-JS v3.1新圖像渲染設計將最大化地降低CPU開銷,幫助節省渲染環節中的CPU消耗。Cocos2d-JS將繼續支持更多的精品HTML5游戲高性能地運行在移動瀏覽器上,致力打造Web平臺最高性能與最多特性的2d游戲引擎。

目前,Cocos2d-JS圖像渲染代碼已合并至https://github.com/cocos2d/cocos2d-html5/tree/Renderer ,歡迎各位開發者下載測試,圖形渲染的改進將在v3.1版本默認集成。

同時,也歡迎各位開發者來測試基于新圖形渲染實現的MoonWarriors打飛機游戲,訪問地址:http://cocos.b0.upaiyun.com/,或掃描下方二維碼快速進入游戲。

 

 

責任編輯:小明 來源: 51CTO.com
相關推薦

2014-08-28 10:20:03

游戲設計

2015-03-25 20:09:21

2015-01-06 17:05:09

Html5引擎Cocos2d-JS

2022-09-13 15:54:41

samgr鴻蒙

2014-07-29 13:27:12

手游Cocos2d-JS神經貓

2014-12-08 16:56:53

2025-02-20 08:26:28

2009-05-08 09:22:00

Python面向對象編譯

2015-10-23 13:44:14

巴巴獵

2014-09-12 14:19:51

Cocos 2d-JS

2012-05-28 15:25:40

微瘋客棧

2022-09-08 15:27:11

OHOSSafwk組件

2015-04-22 09:41:45

WeX5

2011-12-12 10:40:08

Cocos2d-X游戲開發開發環境

2022-08-17 15:07:48

2015-01-26 14:35:44

Cocos 2d-JS

2014-10-29 15:11:35

Cocos Studi

2012-02-19 20:10:23

Cocos2d-x fCocos2dWindows Pho

2012-06-01 10:27:44

Cocos2d觸摸分發原理
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 日韩视频一区在线观看 | 国产精品不卡视频 | 4hu最新网址| 999www视频免费观看 | 久久国产精品免费一区二区三区 | 国产精品a一区二区三区网址 | 亚洲综合五月天婷婷 | 日韩最新网站 | 国产69精品久久99不卡免费版 | 欧美亚洲在线 | 国产精品一区在线 | 欧美成ee人免费视频 | 国产精品永久久久久久久www | 精品视频一区二区三区在线观看 | 国产www.| 欧美一级欧美三级在线观看 | 国产精品久久久久久久久久三级 | 亚洲精品在线免费观看视频 | 亚洲一区影院 | 一级毛片在线播放 | 国产伦精品一区二区三区高清 | 国产成人精品免费视频大全最热 | 九九九久久国产免费 | 视频一区在线 | 日韩国产欧美在线观看 | 久久久www成人免费精品 | 综合一区二区三区 | 欧美www在线观看 | 国产一级影片 | 亚洲精品v日韩精品 | 精品久久一区 | 欧美日批 | 一区二区不卡 | 99re在线播放 | 久久久久久亚洲 | 亚洲自拍偷拍欧美 | 99精品视频在线观看 | 日韩一区二区三区在线视频 | 国产精品一区二区福利视频 | 国产日韩视频 | 亚洲精品欧洲 |