白鷺引擎5.1產品服務升級,推出云平臺并大幅提升核心性能
12月4日,H5游戲引擎商白鷺科技為開發者正式推出了全新白鷺引擎啟動器Egret Launcher,該版本在深度優化交互體驗基礎上,并整合了白鷺引擎5.1最新版本與代碼編輯器Egret Wing 4.1。白鷺科技上線全新產品連發組合拳,不僅彰顯其“穩重高選”的品牌屬性,更標志著產品實現由工具到服務的全面戰略轉型升級。
全新啟動器緊密連接開發者
改版后的Egret Launcher更具科技范,簡約不失格調,化繁為簡的UI設計,為開發帶來全新視覺和個性化體驗,除此之外還新增用戶登錄和離線模式功能,即使在無網絡連接狀況下,依然可以使用部分功能。在深度優化交互體驗基礎上,白鷺引擎還上線新增新聞模塊,使開發者能及時了解白鷺官方團隊推送的引擎更新內容以及行業最新動態,幫助開發者了解到引擎的最新進展、一手教程與最佳實踐。
改進項目管理等功能
白鷺引擎啟動器對于項目管理功能也進行了改善,在項目列表中新增了項目類型標簽。開發者在創建項目中可選擇Egret EUI項目、Egret 3D項目、Facebook Instant Game Demo項目、WebAssembly示例項目,利于方便對多個項目的創建和管理。之后的版本還會對進一步細化項目管理的可視化配置。
工具后臺向云平臺全面升級
白鷺引擎啟動器內置了白鷺引擎逐步開放給開發者的諸多服務,這標志著白鷺引擎已經逐步從代碼框架、開發工作流逐步進化為為開發者提供引擎服務的核心理念,即:引擎 = 核心框架 + 工具鏈 + 云平臺服務。引擎團隊會逐步向開發者提供了如下服務:
1.集成微端,提升游戲性能與留存
本次改版最為值得關注的是,新Egret Launcher將微端直接集成在內,方便開發者快捷的創建游戲。微端是由白鷺科技推出的全新產品,以解決H5游戲打包為原生APP 而發布的原生打包解決方案。白鷺微端解決方案具有極小包體,完善的資源版本管理理功能,易推廣高留存等特性。
目前,白鷺微端安卓系統的 apk安裝包不足1MB,蘋果系統的安裝包也僅有2MB,可以有效的降低用戶的下載安裝門檻。白鷺微端還內置Runtime、Webview兩種運行模式,Runtime模式下可大幅度提升基于Egret引擎所研發的游戲性能,而Webview模式最大化保證兼容性,支持了其它不同游戲引擎所開發的H5游戲。與此同時,通過動態加載技術,白鷺微端實現所打包的原生APP包體極小,節省游戲推廣成本,并提高游戲的用戶留存率。
2.云部署,降低開發者的部署門檻
白鷺云部署會與白鷺引擎 5.1 的全新白鷺編譯器工作流進行深度整合,使開發者在進行完環境配置后,僅需一鍵即可將HTML5游戲項目部署到外網測試環境中,同時可以設置訪問權限,開放給內部同事、合作伙伴、測試玩家。除此之外還能方便的進行版本管理,成員控制等功能。
在白鷺云部署推出以前,HTML5 開發者如果想要部署外網測試環境需要手動發布游戲,上傳外網服務器,手動添加訪問成員,手動進行版本控制,除此之外還需要開發游戲測試網頁。
白鷺云服務的推出大大節約了開發者的研發時間,近期將會跟開發者見面。
3.錯誤日志分析,幫助開發者更快定位錯誤信息
使用云部署的白鷺引擎項目可以使用白鷺引擎提供的錯誤日志分析能力,幫助開發者快速定位源碼級錯誤信息,幫助開發者更快更有效的定位您線上產品的錯誤,并進行快速修改。
4.Google&白鷺廣告平臺,為開發者變現提供支持
Google&白鷺廣告平臺整合了谷歌全球廣告大數據和白鷺HTML5引擎技術,為廣告主和開發者提供了覆蓋廣泛、定向精準、人群數據畫像分析、高效轉化的營銷服務和變現途徑。廣告平臺支持文字、圖片、視頻、原生、信息流等多素材多創意的廣告樣式,以大數據計算能力和用戶人群畫像分析,實現多樣化廣告形式、海量廣告資源、場景化觸達H5游戲用戶,精準鎖定目標群體投放。目前白鷺引擎已經集成了該項服務,方便開發者快速為 HTML5 游戲加入廣告系統。
5.整合Facebook Instant Game,方便開發者出海
白鷺引擎完成對Facebook HTML5 游戲業務Instant Game平臺的支持,開發者可以一鍵創建出 Instant Game 的示例項目,并包含所有 API 的示例代碼和中文的說明文檔。
除了上述內容之外,引擎團隊后續還會推出性能分析報告以及整合白鷺的數據分析等服務提供給開發者。
白鷺引擎 5.1發布,大幅提升重度游戲開發效率與運行效率
除了這些新推出的云服務之外,白鷺引擎也對旗下的核心引擎與工具產品進行了升級,主要包括白鷺引擎 Egret Engine 5.1 與開發工具 Egret Wing 4.1 的升級。白鷺引擎在 2017年5月份正式發布了 5.0 版本,經過了14個小版本的不斷迭代,逐步向開發者提供了以下功能:
- WebAssembly 渲染器 beta,顯著提升游戲渲染效率
- 文字與矢量渲染優化,顯著提升大屏幕手機對文字和矢量渲染的清晰度
- 大幅提升 DragonBones 骨骼動畫的運行性能
- 提升 EUI 項目的編譯速度
- 解決部分 iOS 設備用戶在激活輸入文本后渲染異常的問題
目前,以上功能均已穩定,白鷺引擎接下來會采用雙版本迭代的策略。一方面不斷完善 5.0.x 版本,不引入新功能,專注穩定性提升,錯誤修正以及不破壞整體結構的小幅性能優化。另一方面,引擎發布了包含新特性的 5.1 版本。
對游戲開發者而言,如果您的游戲已經發布或者即將發布,我們推薦您使用穩定版,如果您的游戲剛開始使用白鷺引擎做新項目、或者迫切的需要一些新特性,您可以使用 5.1 版本。 我們開發團隊會根據收集開發者的反饋對 5.1 版本進行完善。如果您在使用 5.1 版本時遇到任何問題或者有什么建議,請隨時與白鷺官方團隊保持聯系,以便第一時間由白鷺團隊幫助您解決遇到的這些問題。
由于目前 HTML5 游戲愈發重度化,白鷺引擎這幾個月也做了諸多具有針對性的改進,提升重度游戲的開發體驗。我們認為,開發一款重度游戲,目前主要仍然存在著以下痛點需要解決:
- 重度游戲構建速度過慢
- 構建工作流不易擴展
- 游戲運行性能需要進一步提高
目前白鷺引擎 5.1 版本引入的全新功能如下:
1.重構 JavaScript 渲染邏輯,渲染性能大幅提升
白鷺引擎在 5.0 版本引入了 WebAssembly 渲染器,大幅提升了游戲的渲染性能。在這個過程中,白鷺團隊也總結了更多的 HTML5 游戲渲染優化策略,并將這些策略應用到了現有的 JavaScript 渲染模塊上。簡而言之,白鷺引擎 5.1 版本的 JavaScript 渲染器得到了進一步的性能提升,在特定 Benchmark 上尤為明顯,提升超過三倍
在實際游戲項目中,由于游戲的渲染列表遠比特定 benchmark 復雜,并且游戲業務邏輯開銷也會占用不少性能,經過我們實際在游戲項目中的測試,我們推論這項改動對您的整體游戲性能會帶來 10% 左右的性能提升。這些幀頻提升會使 HTML5 游戲的整體幀頻更為穩定,并進一步降低 HTML5 游戲的耗電與發熱情況。
2.新的編譯器架構,更方便定制的工作流
白鷺引擎 5.1 采用了新的命令行架構,重點調整了 egret build 與 egret publish命令,并將命令行重命名為白鷺編譯器。
在之前的版本中,白鷺引擎的構建與發布命令對開發者而言是一個黑盒,開發者只能了解到當您執行了 egret build以及egret publish之后,經過一段短暫(或者漫長)的等待時間后,您的源代碼和資源就會生成到一些特定的位置上。當開發者有需要對引擎的發布進行擴展的需求時,您無法對引擎的發布過程進行定制,只能自己編寫一些腳本,并將白鷺引擎的發布過程作為您編寫的腳本中的一部分。
在新版本中,白鷺編譯器構建的所有行為都變成了插件,并直接將插件的執行順序暴露給您,具體機制如下:
通過上述代碼,我們可以很清晰的看出,引擎發布會先后執行 EXML 構建、源代碼編譯、代碼混淆這三個步驟。這樣一方面您可以了解到命令行中到底執行了什么,另一方面您也可以輕松的去調整這些配置。
在下個小版本中,白鷺官方將會允許開發者加入您自己的插件,去擴展整個發布過程。
3.重構優化構建邏輯,提升構建速度
在新的編譯器開發過程中,我們優化了編譯器的內部構建邏輯,以解決大型項目編譯速度緩慢的問題。由于引入了虛擬文件系統作為編譯器對底層硬盤數據的抽象,新的編譯器在執行增量編譯的速度會得到大約10%的構建速度提升,在老式的機械硬盤上會更加顯著。
除此之外,由于使用了基于流的文件處理機制,引擎的發布速度得到了大幅的提升,通過白鷺引擎與一款重度游戲的技術合作為例,該項目中包含了11000余個文件,500兆資源,發布一次原生版本的發布速度從 150秒減少至 50 秒。
這次版本只是我們對構建速度優化的第一步,接下來我們會引入一些新的機制提升引擎的構建速度。
4.項目配置文件梳理,更易理解的產品體驗
每一個白鷺引擎項目中均包含一個 egretProperties.json 文件,這個文件之前會包含了一個名為 egret_version的字段,用于指定采用哪個版本的白鷺引擎進行編譯。
在 5.1 版本中,我們引入了兩個新的字段,分別是 compilerVersion與engineVersion分別表示引擎編譯器的版本與引擎運行時庫的版本。原有的 egret_version字段在新版本中將被廢棄。
這種修改是為了更清晰的表達“編譯器”與“引擎”是兩個不同的概念。編譯器指執行 egret build / egret publish 等開發者需要的命令,而引擎指 egret.js / eui.js 等游戲運行所需要的 JavaScript 腳本。而之前的 " egret_version " 無法清晰的表達這個概念。
從 5.1 版本開始,我們建議開發者使用最新的編譯器版本,以及相對穩定的引擎版本。由于保證了引擎和編譯器的獨立性,白鷺可以為開發者提供更多有價值的功能,因此,開發者完全無需擔心您的現有項目無法使用新的編譯器架構。
為了配合這次改動,白鷺的啟動器也做出了全新的改版。新的版本在完善用戶體驗的同時,刪除了“選擇當前引擎”這一功能,因為您的項目應該使用哪個版本的引擎是配置在項目的配置文件中,而不是配置在一個全局空間中。
5.開發工具升級,支持引擎 5.1 新特性
除了核心引擎升級之外,白鷺的開發工具 Egret Wing 也升級到了 4.1 版本,支持了如下特性
- 創建項目改為調用白鷺引擎啟動器的項目創建,統一引擎的整體工作流
- EUI 編輯支持 Egret 5.1 項目
- EUI編輯支持 WASM 項目
- 修復資源編輯反復切換后,九宮格編輯面板出現問題的BUG
- 允許所有 res.json為后綴的文件都用資源管理編輯器打開
更多功能敬請期待
- 這次版本發布白鷺團隊為開發者帶來了大量的引擎與工具方面的新特性與改進,除此之外,白鷺引擎會在接下來的一個月內逐步向開發者提供以下功能。
- 將內置的資源加載模塊切換至 Egret ResourceManager,這將會使白鷺引擎創建的項目直接內置資源熱更新、資源分平臺部署等重度 HTML5 游戲需要的特性
- 改善 EUI 的加載速度和資源尺寸,解決重度 HTML5 游戲因為 UI 界面過多導致的游戲初始化卡頓問題
- 大幅提升原生App 的運行性能,徹底解決開發者長期以來詬病的白鷺引擎原生打包性能低于其他 HTML5 游戲引擎的問題
- 更多的發布平臺支持,允許開發者快速將您的游戲發布到一些新的平臺上
- 更快的構建速度,理論值提升三倍以上,這將大幅提升重度 HTML5 游戲的開發效率
上述內容已經完善了絕大部分功能,如果開發者希望搶先獲取測試,歡迎與白鷺官方團隊進行聯系。在帶來這些新特性的同時,白鷺官方也會繼續完善白鷺引擎的5.0舊版本,幫助已經上線的產品進一步改善穩定性。



































