ブレンドシェイプ制限ツール v1.0.* 使用説明書
warning
こちらの説明書は ChatGPT によって生成されました。翻訳には誤りが含まれる可能性があります。誤りがある場合はご容赦ください。
概要
これは、ブレンドシェイプを非破壊的に制限(クランプ)するための NDMF プラグインです。
本プラグインは、指定した割合に基づいてブレンドシェイプの頂点変形を再計算し、値が 100 のときに元の指定割合と同等の変形結果になるようにします。
主に、顔のブレンドシェイプを調整した後に、他のシェイプキーによって発生するクリッピング(貫通)を防ぐ目的で使用されます。
機能
- 単一のコンポーネントでブレンドシェイプを非破壊的に制限
- 設定時に結果をプレビュー可能
- アニメーションクリップ内のブレンドシェイプ値も処理
注意事項
- 本プラグインは VRCSDK3 および Unity 2022.3.22f1 の環境でのみ動作確認を行っています。
インストール
依存関係
本プラグインは以下の Unity パッケージに依存しています。インポート前にあらかじめインストールしてください。
- Non-Destructive Modular Framework(1.9.4 以上): https://github.com/bdunderscore/ndmf
パッケージのインストール
- VPM パッケージ一覧ページ にアクセスします。
Add to VCCボタンをクリックし、リポジトリを VCC / ALCOM に追加します。- VCC / ALCOM のプロジェクト管理画面から
Blend Shape Clamperをインストールします。
使用方法
コンポーネントの追加
- Avatar 内で、制限したいブレンドシェイプを持つ Skinned Mesh Renderer を選択します。
- Inspector で
Add Componentをクリックします。 Blend Shape Clamperを検索し、ゲームオブジェクトに追加します。
ブレンドシェイプ制限の設定
Clamper コンポーネントを追加した後:
クランプするブレンドシェイプリスト右下の+アイコンをクリックして、新しい制限項目を追加します。- 制限項目左側のセレクターをクリックし、制限したいブレンドシェイプを選択します。
- 右側のスライダーを調整して制限値を設定し、結果をプレビューします。
プレビューを停止ボタンを押すか、別のゲームオブジェクトを選択するとプレビューが停止します。
完了
Play Mode に入る、または Avatar をビルドして結果を確認してください。
使用方法ここまで動作原理
本プラグインは NDMF の Optimizing フェーズで実行されます。
実行内容
プラグイン実行時、以下の処理が行われます:
- Avatar 内のすべての Clamper コンポーネントを検索します。
- Clamper コンポーネントと同一ゲームオブジェクト上の Skinned Mesh Renderer に含まれるブレンドシェイプを制限し、その値を処理します。
- 制限対象のブレンドシェイプを制御するアニメーションカーブを含むアニメーションを処理します。
値の上書きルール
制限されたブレンドシェイプの値(Skinned Mesh Renderer およびアニメーション内の両方)は、以下のルールに従って上書きされます:
-
元の値が制限値以上の場合、100 に上書きされます。 例:
元の値:80
制限値:70
結果:100 -
元の値が制限値未満の場合、(元の値 / 制限値 * 100) に上書きされます。 例:
元の値:50
制限値:70
結果:50 / 70 * 100 ≈ 71.4286