Egret3D 1.2 釋出,編輯器內測版同步上線
10月8日,Egret3D 版本更新至 1.2 版本,本次更新重點解決以下問題:1、通過模組化分離,降低引擎體積和內部耦合性;2、動畫系統支援更多高階特性;3、通過 Egret3D Inspector 和 Egret3D Editor(代號:Paper) 提升 3D 遊戲的開發效率。
本次更新後,開發者請使用 paper-cli 1.6 ,egret 5.3.1 , egret3d 1.2 三個版本配合進行 3D 專案的開發。
本次的詳細更新內容具體如下:
引擎模組化
本次更新我們將 Egret3D 從一個單一庫拆分為了三個庫,分別是:
1、egret3d,引擎核心,包括元件實體系統與 3D渲染相關內容;
2、inspector,引擎視覺化編輯器核心,包含 Egret 3D Inspector 和 Egret Paper的核心邏輯;
3、physics,3D物理引擎。
通過將Egret3D拆分為諸多模組,引擎體積與1.1版本相比降低了20%,後續版本我們會繼續將 Egret3D 專案進行進一步的模組拆分,保證核心體積進一步降低。
Egret3D Inspector 庫釋出
通過 Egret3D-Inspector,開發者可以快速在遊戲執行時新增一個直觀的當前渲染狀態面板,視覺化的顯示模型、攝像機、燈光的位置以及其他所有屬性值。除此之外,該模組也是 Egret3D 視覺化編輯器的執行時核心。
開發者可以通過執行 paper install inspector命令在專案中新增本庫,並執行 egret clean命令,之後執行egret run命令後就可以在專案中看到編輯面板。
動畫系統支援更多高階特性
在之前的版本中,Egret3D 的動畫系統是完全通過 GPU 渲染實現的,這樣的方式雖然效能很高,但是難於實現許多遊戲中常用的高階動畫功能,諸如:
1、根據特定子元件的位置進行精細化操作,比如換裝,新增特效;
2、補間動畫。
在本次更新中,我們完全重做了動畫系統,使其與 Unity3D 的 Animation 具備更為詳細的 API 和功能實現,通過這次更新,您可以很輕鬆的新增上述特性,如下圖所示:
通過上述圖片可以看到,在新的動畫系統中,可以精確的獲取到動畫中每一個子元件的資料和引用,以便您對其新增更多高階特性(比如將人物手中的劍更換為其他武器)
如果已經在 Egret3D 1.1 中使用了 Animation,升級到 1.2 後,需要使用新版本 Unity3D 匯出外掛重新匯出動畫。
除此之外,這種方式由於需要在 CPU 端進行補間計算,效能與舊版本相比,會有小幅降低,如果骨骼數量大於27塊,由於會回退到 CPU 進行蒙皮,效能會有大幅降低。為了解決這個問題,我們會在下個版本中,將舊版本完全基於 GPU 運算的動畫以一個第三方庫的形式重新引入到引擎中。
Unity 匯出外掛更新
受益於諸多開發者嘗試將真實 Unity3D 遊戲移植到 Egret3D ,Unity3D 匯出外掛本次更新修復了多個 BUG,主要包括:
1、採用標準蒙皮動畫結構輸出動畫資料;
2、預設材質,網格,圖片統一導到Library目錄下;
3、修復同一模型檔案中不同網格匯出的資料會有重複的問題。
文件更新
本次更新我們對Egret3D帶來了諸多改善:
1、文件首頁樣式大幅優化;
2、釋出 API 文件;
3、完善文件內容,將文件數量從29篇提升至36篇,總字數也從17000字提升至32500字,每篇文件的字數從平均586字提升到了903字。
注意
字數統計是根據文件的 markdown 格式原始碼進行的簡單字數統計,僅供參考。
示例專案更新
本次更新引擎內建了一個示例專案集,包含引擎大部分 API 的示例,包括模型、動畫、粒子、物理等內容。

Egret3D Editor (開發代號:Paper) 內測版釋出
歷經一年半的研發,Egret3D Editor (開發代號:Paper)在本次 Egret3D 版本更新中會發佈一個內測版本。這個版本目前包含如下功能:
1、編輯器基礎設施
(1)可定義佈局系統;
(2)全域性快捷鍵系統。
2、場景與預製體編輯
(1)所見即所得的編輯模組;
(2)編輯模式與預覽模式;
(3)儲存與撤銷回退機制。
3、元件編輯
(1)新增元件;
(2)刪除元件;
(3)修改元件屬性。
4、匯入模型
(1)目前僅支援 obj 格式模型匯入。

目前 Egret3D Editor 並不能完全代替掉 Unity,而更適合於與Unity3D匯出外掛配合使用,具體工作流如下:
1、使用 Unity3D 匯出外掛匯出模型、場景、動畫、粒子等內容;
2、使用 Egret3D Editor 對匯出後的場景進行預覽,並新增元件及修改元件屬性;
3、元件修改後通過 Egret3D Editor 進行預覽。
Egret3DEditor 目前仍然處於內測階段。由於引擎團隊支援人員有限,以及 Egret3D Editor 目前仍然尚不完善,在10月份引擎團隊只會提供給十個遊戲開發團隊進行試用,我們會在收集一系列反饋後,在下個版本進一步放寬試用範圍。如果您暫時沒有獲取 Egret3D Editor 的內測版也無需擔心,通過本次更新發布的 Egret3D Inspector,同樣可以幫助您提升3D遊戲的開發效率。
如果您希望申請試用 Egret3D Editor,請傳送郵件到 ofollow,noindex" target="_blank">[email protected] ,並在郵件中註明如下資訊:
1、您的公司或開發團隊名稱;
2、您的公司或者開發團隊所在城市;
3、您的手機號與微信號;
4、您正在開發的 Egret3D 遊戲的線上可訪問地址或者截圖(非常重要)。
再次感謝即將參與到 Egret3D Editor 的開發者對白鷺引擎的支援!
後續計劃
白鷺引擎 Egret3D 團隊目前保持每月一個大版本的迭代效率,在下個版本 1.3 中,我們將重點圍繞著 Egret3D 和 inspector 兩個庫進行優化
1、優化 Inspector 庫與 Egret3D Editor(開發代號:Paper)的使用者體驗;
2、優化引擎的執行時效能。