Egret

**白鷺引擎**（Egret Engine）是一套自由開源的完整的 HTML5 遊戲開發解決方案，用於構建二維遊戲、演示程序和其他圖形界面交互應用等。白鷺引擎是一個基於 TypeScript 語言開發的 HTML5 遊戲引擎。當遊戲開發完成後，可將程序發布到 Web、iOS、Android、Windows Phone、PC 等平台，實現跨平台特性。

白鷺引擎不僅僅是一個基於 HTML5 技術的遊戲引擎，完整的產品線中除了白鷺引擎還提供了很多輔助遊戲開發的工具。開發者可以使用 Egret 提供的相關工具搭建屬於自己的遊戲開發工作流。

白鷺引擎分為 2D 版本和 3D 版本，白鷺引擎 2D 版本已更新至 5.0，白鷺引擎 3D 版本已發布。

## 白鷺引擎迭代歷史

2021 年，白露時代倒閉，但目前的已下載安裝包依然可以繼續使用

2017 年 7 月，白鷺發布白鷺引擎 3D 版本，支持 WebAssembly 技術，擁有強大的 3D 編輯器系統，支持 Unity 工作流導出。

2017 年 5 月，白鷺發布了 5.0 版本，支持 WASM 極速模式和 JS 兼容模式智能切換成為業界首個雙核 H5 引擎。

2016 年 12 月，白鷺引擎發布 4.0 版本，改善資源管理框架。

2016 年 5 月，白鷺引擎發布 3.0 版本，引入的 WebGL。

2015 年 9 月，白鷺引擎發布 2.5 版本，調整局部渲染技術。

2015 年 5 月，白鷺引擎發布 2.0 版本，並發布業界首個 H5 工作流。

## 白鷺引擎主要功能

白鷺引擎繼承了 Flash 的優點，同時更加針對遊戲開發，主要包括如下功能：

* 顯示列表：將遊戲中的可視化元素抽象為視覺模型，通過顯示列表可以靈活的控制遊戲中可視化元素
* 精靈：一種輕量級顯示容器
* 事件機制：提供了一套生成和處理事件消息的標準方法
* 紋理集合：將大量圖片匯集為一張紋理圖進行處理
* 矢量繪圖：封裝了方便簡單的矢量繪圖功能
* 網絡加載：封裝了常用的網絡通訊協議
* 位圖字體：可通過位圖字體方式顯示文本
* 性能監控：可在遊戲中快速開啟性能監控面板
* 反射：對 TypeScript 增加了反射機制，方便模塊化開發
* XML 處理：提供標準的 XML 格式解析生成功能
* 骨骼動畫：支持業內最優骨骼動畫解決方案 DragonBones
* 資源加載：提供了整套資源加載方案，優化網絡加載功能
* EUI：提供大量組件，可快速開發遊戲中的 UI 控制項
* 髒矩形渲染：可以手動控制渲染過程中的髒矩形區域
* WebSocket 支持：可以使用內置的 WebSocket

## 模塊

* 物理系統：內置物理系統模塊，可以製作逼真的物理碰撞效果，模擬真實世界效果
* 屏幕適配模塊：提供 4 中屏幕適配策略，可以方便進行切換，使用不同解析度手機屏幕
* 三種渲染模式無縫切換：可以在 DOM、Canvas 和 WebGL 模式下渲染
* 粒子庫系統：可以製作精美的粒子效果

## 白鷺產品家族

除了核心引擎 Egret Engine（白鷺引擎）外，白鷺時代已構建起一條完整的專業工作流，Egret Runtime（白鷺加速器）, Egret Wing（可視化編輯器）, DragonBones（骨骼動畫工具）等 10 餘款工具可讓開發者簡單、高效的開發出移動遊戲。**白鷺引擎 3D**：業內首款 真 3D HTML5 遊戲引擎。白鷺引擎 3D 版本擁有強大的 3D 編輯器系統，支持 Unity 工作流導出，高性能和小巧包體滿足 H5 3D 遊戲在 PC、APP、H5 三端齊發。白鷺引擎 3D 支持 GPU 骨骼動畫、高級燈光烘焙、可程式渲染管線、泛光、環境光效果、高級紋理、基於 Web Audio 音頻引擎和完善的實時通信網絡模塊，以及大型網路遊戲必須的延遲渲染技術。除此以外 白鷺引擎 3D 還支持全功能後期特效處理，包括後期材質、抗鋸齒、融合、景深等功能。

**骨骼動畫（DragonBones）** ：DragonBones 是國內首款支持 HTML5 動漫國際標準的創作工具。它是白鷺時代推出的面向設計師的動畫與動漫創作平台。包含了可創作骨骼動畫、幀動畫和可交互動態漫畫的集成式創作工具 DragonBones Pro、Flash 動畫導出插件，並支持各大平台主流引擎的運行庫。2017 年 7 月，DragonBones5.3 版正式上線。

**白鷺加速器（Egret Runtime）** ：這是一款支持 3D 的 HTML5 遊戲加速器，主要解決解決低端機對 HTML5 標準支持不佳、體驗差的弊端，通過 Runtime 適配不同的系統讓 HTML5 遊戲效果媲美原生遊戲。截止到 2017 年，Runtime 已累計接入設備 5 億台。

**可視化編輯器（Egret Wing）** ：可視化編輯器（Egret Wing）是白鷺時代推出的一款強大而智能的記成開發環境（IDE），支持主流開發語言與技術。通過可視化編輯器，提高遊戲開發效率。支持 Node.js 開發擴展插件，更好地定製化自由內容。使用 Egret Wing 可以更快速的編寫 Web 相關項目及快速實現 Egret 可視化內容。

**Lakeshore**：是一款無需編程的免費遊戲創作工具，使用 Lakeshore 的強大功能每個人都可以快速創作效果炫酷的遊戲。藉助 Egret 引擎，Lakeshore 創作的遊戲能夠在安卓、iOS 和 Windows Phone 平台上運行。

**Egret Native**：可以將您基於 Egret 開發的 HTML5 遊戲轉換為 Android App 和 iOS APP。轉換後的 APP 效率更加接近原生遊戲性能，Egret Native 通過對 QuickSDK 的支持，可使你一鍵生成所有渠道包，更加專注遊戲品質。

**Egret Feather**：是一款粒子編輯器，各個參數的組合塑造出千變萬化的效果，為遊戲添姿添彩。全程可視化編輯操作，屏蔽所有底層複雜的參數設置。所見即所得的操作模式，讓即使毫無編程技能的美術人員也可快速上手，立即製作出精美的粒子效果。編輯器可以自動導出配置文件供程序開發使用。

**EgretVS**：是一款 Visual Studio 插件，致力於提高 Egret 引擎在 Visual Studio 中的使用體驗。

**Texture Merger**：是一款紋理集打包和動畫轉換工具。它能將零散的小圖合併為大圖紋理集，提高資源加載速度和遊戲性能。在遊戲研發過程中，開發者可以使用小圖開發，等到產品發布時再對資源進行合併，完全不用修改代碼 Texture Merger 可以方便的將 GIF 和 SWF 動畫轉換為 Egret 支持的動畫格式。

**Egret Conversion**：是白鷺時代推出的一款重要產品，可以快速的將現有的 Flash 項目轉換到 Egret HT ML5 項目。界面友好易用，無需其他工具的輔助。功能強大可擴展，支持 AS3 各種複雜語法特性，涵蓋絕大部分的 Flash API，並且支持 swf 資源的直接轉換。

**Egret Inspector**：是一款 供 Google Chrome 開發者使用的插件，能夠幫助開發者可視化地調試 Egret 項目。

**ResDepot**：是 Egret 遊戲的可視化資源管理工具。它能輕鬆高效地管理大量遊戲素材和配置文件資源。幫您快速製作生成 Egret 遊戲中所需的資源配置文件，輕鬆定製靈活的分組加載規則。通過可視化的拖拽操作，快速完成資源配置文件。[1]

## 參考資料

## 外部連結

官方網站