00_Blendshape Keeper¶
表情アニメーションを再生した瞬間に、改変したブレンドシェイプが元へ戻るのを防ぎます。
こんなときに使います¶
顔の改変でブレンドシェイプに値を入れた(口を小さくした、まぶたを調整した)とします。 ところが、もともと入っている表情アニメーションが同じブレンドシェイプを 0 や低い値でキーしていると、 表情を再生した瞬間に改変が打ち消されます。
このツールは、アニメーション側のキー値をメッシュの現在値まで引き上げることで解消します。
| キー値 | メッシュの現在値 | 適用後 |
|---|---|---|
| 20 | 60 | 60(引き上げる) |
| 80 | 60 | 80(そのまま) |
キー値のほうが大きい場合は変更しません。表情側が意図して強く動かしているケースを壊さないためです。
使い方¶
- シーン上の対象メッシュ(顔メッシュなど)を指定します。複数指定できます。
- 対象アニメーションを指定します。フォルダをドロップすると、その配下のクリップをまとめて追加できます。
- 「差分を確認」で変更内容の一覧を出します。
- 必要に応じて「変更をプレビュー」で、修正前と修正後を見比べます。
- 反映する項目のチェックを確認し、「適用」を押します。
アバタールートは、指定したメッシュから自動で判定されます(最も近い Animator を探します)。
判定できないときだけ、手動で指定する欄が出ます。
対象メッシュは自分で指定します
アバター配下のすべてのメッシュを自動で対象にはしません。 体・服・髪まで巻き込むと結果が読めなくなるため、指定したメッシュだけを扱います。
アニメーションも自分で選びます
アバターの Animator を辿ってクリップを自動収集する機能はありません。
意図しないクリップが書き換わるのを防ぐためです。
フォルダをドロップした場合は「サブフォルダを含める」で再帰するかを選べます。
書き込み先を選ぶ¶
| モード | 挙動 |
|---|---|
| 上書き | 元のクリップをそのまま書き換えます |
| 別のアニメーションとして保存 | 複製を作り、複製にだけ書き込みます。元のクリップは変更されません |
「別のアニメーションとして保存」では、出力フォルダ(Assets/ または Packages/ 配下)と
サフィックス(既定は _Kept)を指定します。
出力フォルダは、選択ボタンのほか Project ウィンドウからのドラッグ&ドロップでも指定できます。
- 同名のファイルがある場合は連番付きの別名で保存し、既存ファイルを上書きしません
- 「変更が無いアニメーションも複製する」を有効にすると、 一覧に出ているクリップは反映項目をすべて解除していても複製できます
モデルファイル内包のクリップも扱えます
FBX に内包されたクリップや Packages/ 配下のクリップは上書きできませんが、
「別のアニメーションとして保存」なら対象にできます。
変更をプレビューする¶
「変更をプレビュー」を押すと、別ウィンドウが開きます。
- 修正前(元のクリップ)と修正後(チェックした変更を反映したクリップ)を、 それぞれアバターに再生して見比べます
- 表示は「左右に並べる」と「切り替え」から選べます
- 「顔」と「全身」を切り替えられます。左ドラッグで回転、ホイールでズーム、 「視点をリセット」で戻せます
プレビューはシーンに影響しません
プレビューはツール内の複製に対して行われます。シーン上のアバターには一切触れません。 プレビューから適用することもできません。
制限と注意¶
| 項目 | 内容 |
|---|---|
| 実行できない状態 | 再生中、Animation ウィンドウのプレビュー中 |
| 追加されないもの | クリップに存在しないブレンドシェイプのカーブは追加しません |
| 変更されないもの | キーの時刻・タンジェント・キーの増減は変更しません(値だけを書き換えます) |
| 対象外 | 指定していないメッシュのカーブは、変更にもスキップにも現れません |
適用した変更は「元に戻す(Undo)」で取り消せます。 ただし重要なプロジェクトでは、事前のバックアップを推奨します。
よくある症状¶
「差分を確認」を押しても何も出ない
キー値がメッシュの現在値以上であれば、変更する必要がないため一覧には出ません。 メッシュ側にブレンドシェイプの値が入っているか、対象メッシュの指定が正しいかを確認してください。
スキップに「ブレンドシェイプが見つかりません」と出る
クリップが指しているブレンドシェイプ名が、指定したメッシュに存在しません。 衣装や別バージョンのメッシュ向けのカーブが混ざっている可能性があります。
再生中で実行できないと言われる
再生中は Animator が値を上書きしているため、メッシュの現在値が改変後の値と一致しません。 再生を止めてから実行してください。
プレビューでアバターが表示されない
「全身」に切り替えて「視点をリセット」を押してください。 顔の推定が外れている場合でも、全身表示なら必ず映ります。