當前位置:
首頁 > 最新 > 白鷺引擎發布 版優化打包 iOS/Android App 的運行性能

白鷺引擎發布 版優化打包 iOS/Android App 的運行性能

在3月12日,我們將為白鷺引擎推出5.1.6 版本。5.1.6版本是對去年12月份發布的5.1版本的一次功能更新和集中性缺陷修復,主要目標是添加新的 iOS / Android App 打包支持,以及完善微信小遊戲、QQ玩一玩、AssetsManager的穩定性。

iOS / Android 原生打包

在這次更新發布的 Egret Launcher 中,我們在發布設置中整合了iOS 與 Android 平台的發布設置。

自2014年底起,白鷺引擎推出的2.0 版本便已經支持開發者將遊戲打包為 iOS / Android App 發布到原生平台中,除此之外,2017年我們又推出了微端解決方案。在這次更新中,我們將 iOS / Android Support 的底層內核切換為了微端內核,並添加了新的 NativeRenderer 機制,大幅提升了打包後的 App 的渲染性能。

之所以會有如此重大的提升,這是因為在之前的 iOS / Android Support 中,原生內核雖然提供了優化後的 HTML5 Canvas2D / WebGL 渲染介面,但是核心渲染驅動仍然是由 JavaScript 邏輯執行的,在新推出的 NativeRenderer 中,渲染驅動邏輯從 JavaScript 端遷移到了 Native C++ 端,這樣做會大幅降低 JavaScript 引擎的負擔,特別是在所有的 iOS 設備以及低端 Android 設備中表現極其明顯。

需要注意的是,由於在 iOS / Android 上的渲染驅動遷移到了 Native 端,開發者不再能夠通過 Hack 引擎的 JavaScript 代碼的方式去修改打包後的渲染行為。這相當於我們犧牲了一定的靈活性換來了更高的性能,如果開發者希望保留這些靈活性,您也可以強制關閉 NativeRenderer ,仍然使用之前機制。

NativeRenderer 已經在數個正式發布的產品中得到了使用,除了實際產品驗證之外,NativeRenderer 也通過白鷺自研的內部自動化測試系統中進行了200餘個測試用例的測試,目前絕大部分測試用例均已通過。

在尚未通過的測試用例中,以下圖為例,我們可以看出,iOS 打包無論使用舊的 JavaScriptRenderer還是新的NativeRenderer ,發光濾鏡、顏色變換濾鏡和模糊濾鏡的渲染結果均完全一致,但是投影濾鏡仍然存在一些肉眼較難發現的問題。這些問題我們會逐步解決,如果您在使用中發現了問題,也歡迎您貢獻測試用例給官方。

NativeRenderer 需要白鷺引擎 5.1.5 以上的版本才可以使用。

除了 NativeRenderer之外,本次更新還帶來了如下內容:

2D 渲染 - JavaScript

修復設置一次虛線後,後續所有繪製均為虛線的BUG ( 感謝開發者 gaokun )

修復 DragonBones Mesh 渲染旋轉在特定情況下的渲染BUG ( 感謝《豬來了》研發團隊)

AssetsManager

微信小遊戲

QQ 玩一玩

修復了BitmapText字體位置偏移的問題

增加了底層背景,在啟動項中增加了背景顏色的設置

修復了DisplayObject scrollRect無效的問題

修復了EUI scroller顯示錯誤的問題


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 白鷺科技 的精彩文章:

TAG:白鷺科技 |