教學
最低要求
版本:Unity 2022.3或更高版本
Render Pipeline:BRP/URP/HDRP
Package:Unity Mathematics 1.2.1或更高版本
(VRChat 模式)Package:VRChat SDK
(VRChat 模式)Package:NDMF(Non-Destructive Modular Framework)1.7.0或更高版本
已驗證環境
即使使用相同的作業系統/硬體配置,顯示器配置、顯示卡驅動程式版本、Unity 環境設定等環境因素也可能導致特定問題或故障。
此外,由於VRCSDK和 NDMF 版本之間的差異,NDMF 模式的操作可能會出現問題。
| PC1 | PC2 | |
|---|---|---|
| UnityVersion | 2022.3.22f1 6000.0.30f1/42f1/62f1 |
2022.3.22f1(Apple silicon) 6000.0.62f1(Apple silicon) |
| OS | Windows11 24H2 | macOS Sequoia 15.6 |
| CPU | AMD Ryzen9 9950X3D | Apple M4 |
| GPU | GPU: NVIDIA RTX 5090 iGPU: Radeon Graphics |
M4 iGPU |
安裝
下載、安裝或使用時遇到問題
曾有下載檔案被防毒軟體誤判為 Trojan 的案例,也有只在特定環境出現的問題。
若遇到異常,請參閱疑難排解。
-
EreMorph
從官方發售平台下載 EreMorph_v.x.x.x.zip。解壓縮後,開啟其中的 EreMorph_v.x.x.x.unitypackage,並 Import 至 Unity Project。
請勿使用非官方來源的檔案
本工具只透過官方發售平台提供。 其他來源均屬第三方未經授權的再散布。 從上述以外的連結取得的 UnityPackage 可能包含惡意 Script。
-
Package: Unity Mathematics(外部連結)
若已安裝 VRChat SDK,通常亦已安裝此 Package。
本工具使用 Unity Mathematics 處理 SkinnedMesh。
若未安裝此 Package,SkinnedMesh 只會在 Rest Pose 下正常運作。如果 Project 中未安裝 Unity Mathematics,則會顯示自動安裝對話方塊。 (1)
-
(VRChat 模式)Package:VRChat SDK
安裝 VRChat SDK 後,可使用工具的VRChat Mode。 VRChat Mode 允許保留此 Component 進行 Upload;不過為避免 Mesh 出現非預期結果,建議同時安裝下方的 NDMF。
-
(VRChat 模式)Package: NDMF (Non-Destructive Modular Framework)(外部連結)
若正在使用 Modular Avatar 或 lilycalInventory,通常已經安裝 NDMF。
NDMF 是用來製作 VRChat Avatar 非破壞式 Editor Plugin 的 Framework。 安裝後,可透過NDMF Mode調整 Avatar Upload 時的處理方式。
如何使用
-
工具指派
在含有 Mesh Renderer/Skinned Mesh Renderer 的 GameObject 上,從 Add Component 加入 EreMorph 或 EreMorph (VRChat)。
-
EreMorph
Runtime Mode:Unity。
未安裝 VRCSDK 的 Project 會固定使用此 Component。基本使用方式是 Export Mesh 後使用;由於 Component 在 Play Mode 中仍會保留,也可在 Play Mode 中進行修正或拍照。
-
EreMorph (VRChat)
Runtime Mode:VRChat。
進入 Play Mode 時會移除此 Component,因此即使保留 Component 也能 Upload 至 VRChat。
變更 NDMF Mode 後,會自動執行 Mesh Export → 指派。
Information
指派後仍可切換 Runtime Mode,且會保留原有資料。
-
-
新增 Morph Unit/指派 Morph Data Asset
EreMorph 會把 Morph Unit(變形資訊)儲存成 Data Asset,位置為
Assets/EreMorph_Assets。新增 Morph Unit 時,系統會自動建立並指派新的 Morph Data Asset。
新增 Morph Data Asset 時,若新增初始預設已啟用,系統會加入指定群組與 Morph Unit,並將該群組設為 Prebake。
初始預設內容
-
Prebake Group(Prebake Unit)
此群組預設指定為 Bake 至 Base Mesh(Prebake)。
Prebake 群組內的 Morph Unit 不會寫入 Shape Key;系統會依當前 Weight 直接寫入素體。
因此若要進行穿模修正或形狀調整等「修改 Base Mesh」操作,請編輯此群組內的 Morph Unit。
-
BlendShapeUnit
一般 Morph Unit,會寫入 Shape Key。
可以透過使用過去建立的 Asset 來重複使用和共享 Morph Unit 資料。
啟用 Morph Data Asset 與 Target Mesh 相容 後,指派 Component 時會列出 Target Mesh 與目前 Mesh Property 相同的 Data Asset。
-
-
(選項)Prebake 設定

設為 Prebake 的 Morph Unit 群組不會寫入 Shape Key,而會直接修改素體。
可編輯 Prebake 群組內的 Morph Unit 進行穿模修正與形狀調整,再用其他 Morph Unit 建立 Shape Key。
啟用保留 Prebake Weight後,編輯其他 Morph Unit 時仍會保留 Prebake Weight,讓各 Shape Key 以修改後的 Base Mesh 為基準建立。
-
編輯 Morph Unit

按下任何 Morph Unit 的編輯按鈕即可進入編輯模式。
啟用 Tips 後,編輯視窗會顯示簡短說明。
透過編輯 UI 顯示位置,可在 Scene View 與獨立視窗之間切換。
-
(選項)變更 Group Mode/Build/Export 設定

如果要將一組中的 Morph Unit 合併到一個 Shape Key 中,請變更合併模式。
合併模式詳細資訊

NDMF Build/Mesh Export 設定 可設定 Shape Key 覆寫或套用 Shape Key Weight。
-
(選項)Shape Key Animation 設定
使用 NDMF 進行 Avatar Build 時,建議搭配其他工具自動建立 Animation 並註冊 FX。
→ 一個例子在 Import/BlendShape 同步頁籤按下同步 BlendShape 清單後,會暫時在 Edit Mesh 中加入空白 Shape Key。
-
Avatar Upload/Mesh Export

最後如圖所示,以 Prebake 修改 Base Mesh,並使用其他 Morph Unit 建立 Shape Key。
一般情況下,寫入 Shape Key 的 Morph Unit,其輸出 Weight 為 0。
準確來說,這裡指的是 SkinnedMeshRenderer 的 BlendShapeWeight;若該 Index 的 Weight 曾被修改,數值可能不是 0。
因此,Export Mesh 時會因 Weight 改變而影響外觀的 Morph Unit/群組會顯示「⚠️」警告。
把它設為要 Bake 的 Morph Unit、將 Weight 設為 0,或啟用「將 Morph Unit Weight 套用至 Shape Key」後,警告便會消失。
為避免意外變形,建議消除警告後再 Upload。
編輯模式操作
在 Edit Mode 中:
Click:選取單一頂點
Drag:使用 Rectangle Selection 選取多個頂點
按住 Ctrl:切換選取/取消選取
按住 Shift:加入選取範圍
選取多個頂點時,可切換 Pivot/Center(Shortcut:Z),把 Transform Origin 設為最後選取的頂點或選取範圍中心。
Move(Shortcut:W)
Rotate(Shortcut:E)
Scale(Shortcut:R)
以上皆為 Unity 的標準 Shortcut。
按右鍵可開啟 Context Menu,把所選頂點、Falloff Radius 內受 Weight 影響的頂點,或全部頂點,還原至開始編輯時的位置或 Mesh 初始位置。
拖曳 Handle 時滾動滑鼠滾輪,可調整 Falloff Radius。
在 Surface Distance Mode 中,拖曳 Handle 時按住 Alt(Option)並滾動滑鼠滾輪,可微調 連接閾值 ε(m)。
移動 Handle、調整 Radius 與 Threshold 時,都可按住 Shift 進行精細調整。
啟用 Keep Dragging 後,可在拖曳狀態中改變編輯設定,即時預覽計算模式與 Symmetry。
變更所選頂點或切換 Tool 時,會確認目前位置。
關於超出 Vertex Weight 的編輯
即使移動頂點,該頂點原有的 Vertex Weight 仍會保持不變。
因此,若把頂點移動至原本 Bone 影響範圍以外,Animation 可能不如預期。
若需要把 Vertex Weight 從原 Bone 全部轉移至另一個 Bone,可使用 Vertex Weight Remapping。
部分服裝亦可能由 Rotation Constraint 控制,請一併留意。
如何在 NDMF Build 中移動 Shape Key
未來計劃讓每個 Morph Unit 可獨立指定 Control Type;目前亦可搭配其他工具,把相關設定自動化。
以下以 lilycalInventory 的 LI SmoothChanger 為例。
將 LI SmoothChanger 加入 Avatar 內任意 GameObject,並在未指定 Mesh 的情況下設定「BlendShape 切換」。
若指定 Mesh,只能選擇該 Mesh 現有的 Shape Key;留空時則可直接輸入名稱。
2.0.0 或更高版本
EreMorph 2.0.0 以上版本提供暫時同步 Shape Key 清單按鈕;使用後,即使已指定 Mesh,也能選擇新建立的 Shape Key。
設定後
- 指定 Mesh=>該 Mesh 的匹配 Shape Key
- Mesh 留空 => 對整個 Avatar 尋找名稱相符的 Shape Key
設定後即可驅動對應的 Shape Key。

注意事項
本工具加入 Component 後,會以複製出的 Edit Mesh 取代 MeshFilter/Skinned Mesh Renderer 的 Mesh 欄位,再進行編輯。
因此,若其他工具也會替換 Mesh 欄位、直接編輯 Mesh,或透過 NDMF Preview 進行同類操作,兩者可能無法正常併用。
遇到衝突時,可先關閉另一工具的 NDMF Preview;若該工具沒有 Preview 開關,請先Export Mesh 固定 EreMorph 的結果,再使用其他工具。

