EreMorph 運作原理
基本操作
EreMorph 的配置如下圖所示。
基本流程
當分配EreMorph元件時,它會將Mesh Filter / SkinnedMesh Renderer的SharedMesh儲存在物件中作為目標 Mesh。
當未分配變形資料資源(ScriptableObject)並新增新的Morph Unit時,將在下列路徑中自動建立變形資料資源。
變形資料資源儲存目標 Mesh、Morph Unit/群組資訊、最後儲存的路徑等。
- Assets/EreMorph_Assets/[場景名稱]/[Hierarchy 物件路徑]/Mesh名稱.asset
EreMorph 具有變形資料資源,在啟動編輯器、進入Play Mode和Build場景時,會自動從目標 Mesh建立編輯用 Mesh,將其指派給 SharedMesh,並套用Morph Unit變形。
為了防止導出和分配的Mesh被編輯用 Mesh自動覆蓋,只有在以下條件下才會進行分配。
- 當 SharedMesh 與變形資料資源的目標 Mesh相同時
關於Prefab
從EreMorph 2.0.0開始,EditMesh不再儲存,而是在每次啟動編輯器時產生。
因此,當包含 EreMorph 和 Edit Mesh的物件儲存到 Prefab 時,SharedMesh 將消失。
當 EreMorph 運行時,假設不會有問題,因為它將自動從Morph Data Asset資訊中恢復,並且將分配 Edit Mesh。
但是,如果卸載了EreMorph或由於某些異常而不再產生EditMesh,則該Mesh將保持為None並消​​失。
啟用 Prefab 防護然後,儲存為Prefab時,會自動切回TargetMesh並儲存。
卸載時您可以透過檢查Project中的Prefab來檢查是否使用了EreMorph。
關於Play Mode和場景Build
如果專案中存在,EreMorph 會將其放入 NDMF 的Build階段。
該工具處於 Transforming 階段。ModularAvatar我正在努力讓它早點發揮作用。
如果 NDMF 不在專案中,它將使用自己的Build處理器自動Build。
詳情 VRChat World/遊戲建構行為 請檢查。
防範措施
如上所述,該工具更改了「Mesh Filter / SkinnedMesh Renderer 的 SharedMesh」。 換句話說,它可能與類似修改 SharedMesh 或編輯 SharedMesh Mesh的擴充不相容。
在這種情況下,我們建議在使用其他擴充功能之前ExportMesh。