チュートリアル
最低要件🔗
バージョン: Unity 2022.3 以降
パイプライン: BRP/URP/HDRP
パッケージ: Unity Mathematics 1.2.1 以降
(VRChatモード) パッケージ: VRChat SDK
(VRChatモード) パッケージ: NDMF (Non-Destructive Modular Framework) 1.7.0 以降
動作確認済みの環境🔗
同一のOS・HW構成であってもディスプレイ構成・グラフィックスドライババージョン・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 |
インストール🔗
ダウンロード・インストール・使用時に問題が発生した方へ
ダウンロードでトロイの木馬判定される事象が確認されております。
また、ツール使用時に一部環境でのみ発生する問題が確認されております。
恐れ入りますが問題が発生したらトラブルシューティングをご確認ください。
-
EreMorph
配布サイトから EreMorph_v.x.x.x.zip をダウンロードします。解凍し内部の EreMorph_v.x.x.x.unitypackage を開いてUnityプロジェクトにインポートします。
公式以外から入手したファイルを使用しないでください
リンク先以外では本ツールは配布していません。 上記以外で配布されている物は、許可なく第三者の手によって二次配布されているものです。 上記以外のリンクから入手したUnityPackageには悪意あるスクリプトが挿入されている危険性があります。
-
パッケージ: Unity Mathematics (外部リンク)
VRChat SDKをインストールしている場合、一緒にインストールされているため問題ない想定です
本ツールではSkinnedMeshの変換にUnity Mathematicsを使用しています。
本パッケージがインストールされていない場合、SkinnedMeshはレストポーズ以外では思ったように動かせません。もしプロジェクトにUnity Mathematicsがインストールされていない場合、自動インストールダイアログが表示されます。 (1)
-
(VRChatモード) パッケージ: VRChat SDK
VRChat SDKがインストールされている場合、本ツールをVRChatモードで動かすことが可能です。 VRChatモードでは本コンポーネントを付けたままでもアップロード可能になりますが、意図しないメッシュとなる恐れがあるため可能な限り以下NDMFをインストールすることを推奨いたします。
-
(VRChatモード) パッケージ: NDMF (Non-Destructive Modular Framework) (外部リンク)
ModularAvatar や lilycalinventory を使っている人は既にインストールされています。
VRChatアバター用の非破壊エディタープラグインを構築するためのフレームワークです。 本パッケージがインストールされていると、NDMFモードを指定し、アバターアップロード時の動作を変更できます。
使い方🔗
1. ツールの割当🔗

編集するメッシュのあるオブジェクトで AddComponentから EreMorph 若しくは EreMorph (VRChat)を追加します。
自動でメッシュが編集用メッシュに切り替わります。詳しくは 対象メッシュ
2. モーフユニットの追加🔗

ここで追加したユニットがそれぞれ個別のBlendShapeになります。
3. モーフユニットの編集🔗

編集ボタンを押下し編集モードに入ります。
詳しくは編集モードの操作へ
編集が終わったらシーン左上にあるUIから Save 若しくは Abort で終了します。
4. 出力🔗
本ツールは以下の形でアップロード・メッシュ出力が可能です。
- ユニットをBlendShapeとして書き込んでメッシュ出力
- 現在の形状を元の形状としてメッシュ出力
単体のメッシュアセットとしてエクスポートする他、NDMFに対応しているため直接VRChatにアップロードすることも可能です。
そのままアップロードで自動的にメッシュ出力・割当してくれます。
詳しくは NDMFモード をご確認ください。
NDMFモード「ブレンドシェイプ+メッシュをベイク」でビルドする場合、出力されたシェイプキーを動かすにはアニメーション周りの設定を何らかのNDMF対応ツールで実施する必要があります。例として lilycalinventory を使用した際の設定
編集モードの操作🔗
編集モードでは
クリック で単一の頂点を選択し
ドラッグアンドドロップ で矩形選択することが出来ます。
Ctrl を押しながらで選択・非選択の切り替え、
Shift を押しながらで追加選択が行えます。
複数頂点を選択している際には
Pivot/Center 切り替え(ショートカット: Z)
で移動原点を最後に選択した頂点と中心で変更できます。
移動 (ショートカット: W)
回転 (ショートカット: E)
スケール (ショートカット: R)
のツールを変更可能です。
上記ショートカットは普通のUnityでも使えるよ
右クリックでコンテキストメニューを表示可能です。 選択頂点・選択頂点から半径内のウェイトがある頂点・すべての頂点 を 編集開始時の位置・メッシュの初期位置に戻すことが出来ます。
ハンドルを持った状態で マウスホイールを動かす と 影響フィールドの半径を調整できます。
表面距離モード のとき、ハンドルを持った状態で Alt(optionキー)を押しながらマウスホイールを動かす と 接続しきい値 ε (m) を微調整できます。
ハンドルの移動、半径の調整、しきい値の調整 これらは全てShiftを押しながらだと更に細かく動かせます。
ドラッグを維持オプションを有効化していると、頂点移動後に各編集設定を変更してリアルタイムに計算モードやシンメトリを反映させることが出来ます。
ドラッグを維持オプションを有効化中は、選択頂点の変更やツール変更で位置を確定できます。
頂点ウェイトを超えた編集について
本ツールで頂点を動かしても、その頂点に紐づいた頂点ウェイトはそのままです。
そのためウェイトのあるボーンを超えた編集は、想定した動きとならない場合があります。
「元のウェイトが乗ってるボーンから別のボーンに全て移動させたい」場合であれば頂点ウェイトリマッピングで修正できるためお試しください。
衣服によってはRotationConstraintで制御していたりするので気をつけてください。
NDMFモード「ブレンドシェイプ+メッシュをベイク」のとき作られるシェイプキーを動かすには🔗
将来的にはモーフユニット個別にコントロールタイプ等を指定し内部で完結させたいですが、現状でも他ツールと併用して自動化出来ます。
例として lilycalinventory の LI SmoothChanger を用いた設定方法をここに記します。
することは単純で
LI SmoothChanger をアバター内の好きなオブジェクトに追加し、「BlendShapeの切り替え」をメッシュを指定せずに設定する。
メッシュを指定してしまうとメッシュのシェイプキーしか設定できませんが、空であればテキスト指定が行えます。
設定後に
- メッシュを指定 => そのメッシュの一致するシェイプキー
- メッシュは空のまま => アバター全体で一致するシェイプキー
が動きます。

注意事項🔗
本ツールの根本としてコンポーネントを割り当てると「MeshFilter/SkinnedMeshRendererのMeshプロパティを複製した編集用のメッシュに置き換える」という動作があります。
そのため同様にMeshプロパティを変更するツールや、Meshを編集するツール、そういった動作をするNDMFプレビューを行うと正常に動作しなくなる可能性があります。
そのようなツールと併用する場合、NDMFプレビュー動作のあるものは動作を切り、無いものはメッシュをエクスポートして本ツールの影響を除外してから他のツールを使用してください。
