メインコンテンツまでスキップ

カスタムキャラクターでプラグインを使用する方法

このガイドでは、非MetaHumanキャラクター向けにRuntime MetaHuman Lip Syncをセットアップするプロセスを説明します。このプロセスには、アニメーションの概念とリギングに関する知識が必要です。特定のキャラクターへの実装に支援が必要な場合は、[email protected] までプロフェッショナルサポートにお問い合わせください。

Lip Syncモデルに関する重要な注意点

カスタムキャラクターの互換性

カスタムキャラクターはStandard (Faster) モデルでのみサポートされています。

Realistic (Higher Quality) モデルは、MetaHumanキャラクター専用に設計されており、カスタムキャラクターでは使用できません。このガイド全体を通して、メインのセットアップガイドから参照される際は、Standardモデルの手順に従ってください。

拡張プラグイン必須: カスタムキャラクターでStandard Modelを使用するには、メインセットアップガイドの前提条件セクションで説明されているように、Standard Lip Sync Extension pluginをインストールする必要があります。

この拡張機能は、このガイドで説明するすべてのカスタムキャラクター実装に必須です。

前提条件

開始する前に、キャラクターが以下の要件を満たしていることを確認してください:

  • 有効なスケルトンを持っている
  • 表情用のモーフターゲット(ブレンドシェイプ)を含んでいる
  • 理想的には、10個以上のビセームを定義するモーフターゲットを持っている(ビセームが多いほど、リップシンクの品質が向上します)

プラグインは、キャラクターのモーフターゲットを以下の標準的なビセームにマッピングする必要があります:

Sil -> Silence
PP -> Bilabial plosives (p, b, m)
FF -> Labiodental fricatives (f, v)
TH -> Dental fricatives (th)
DD -> Alveolar plosives (t, d)
KK -> Velar plosives (k, g)
CH -> Postalveolar affricates (ch, j)
SS -> Sibilants (s, z)
NN -> Nasal (n)
RR -> Approximant (r)
AA -> Open vowel (aa)
E -> Mid vowel (e)
IH -> Close front vowel (ih)
OH -> Close-mid back vowel (oh)
OU -> Close back vowel (ou)

注記: キャラクターが異なるビセムセットを持っている場合(その可能性が高いです)、各ビセムに完全一致は必要ありません。近似で十分なことがよくあります。例えば、キャラクターの SH ビセムをプラグインの CH ビセムにマッピングすることは、それらが密接に関連した後部歯茎音であるため、効果的に機能します。

ビセムマッピングリファレンス

一般的なビセムシステムとプラグインに必要なビセム間のマッピングは以下の通りです:

ARKitは、いくつかの口形状を含む、顔のアニメーション用の包括的なブレンドシェープセットを提供します。これらをRuntimeMetaHumanLipSyncのビセムにマッピングする方法は以下の通りです:

RuntimeMetaHumanLipSync ビセムARKit 相当備考
SilmouthCloseニュートラル/休止位置
PPmouthPressLeft + mouthPressRight両唇音には、両方のプレス形状を一緒に使用
FFlowerLipBiteLeft + lowerLipBiteRight (または mouthRollLower)下唇が上歯に接触、「f」や「v」の音など
THtongueOutARKitは直接的な舌制御を提供
DDjawOpen (軽度) + tongueUp (舌リグがある場合)舌が歯茎に接触;顎をわずかに開く
KKmouthLeft または mouthRight (軽度)口角をわずかに引くことで軟口蓋音を近似
CHjawOpen (軽度) + mouthFunnel (軽度)後部歯茎音のために組み合わせる
SSmouthFrown歯擦音にはわずかなしかめ面を使用
NNjawOpen (非常に軽度) + mouthClose口をほぼ閉じ、顎をわずかに開く
RRmouthPucker (軽度)r音のためのわずかな丸め
AAjawOpen + mouthStretchLeft + mouthStretchRight (または jawOpen + mouthOpen)「あ」の音のための広く開いた口
EjawOpen (軽度) + mouthSmile中程度に開き、わずかに笑う
IHmouthSmile (軽度)唇をわずかに広げる
OHmouthFunnel丸く開いた形状
OUmouthPuckerきつく丸めた唇

カスタムポーズアセットの作成

Blend Runtime MetaHuman Lip Sync ノードで使用するキャラクター用のカスタムポーズアセットを作成するには、以下の手順に従ってください:

1. キャラクターの Skeletal Mesh を特定する

リップシンクアニメーションに使用したいモーフターゲット(ブレンドシェイプ)を含むスケルタルメッシュを見つけます。これは、キャラクターの設計に応じて、全身メッシュまたは顔メッシュの場合があります。

2. モーフターゲットとカーブを確認する

続行する前に、スケルタルメッシュにリップシンクアニメーション用の適切なモーフターゲットと対応するカーブがあることを確認してください。

モーフターゲットの確認: スケルタルメッシュに、リップシンクアニメーションのビセームとして使用できるモーフターゲット(ブレンドシェイプ)が含まれていることを確認します。顔のアニメーションをサポートするほとんどのキャラクターには、いくつかのフォネーム/ビセームのモーフターゲットがあるはずです。 キャラクターのモーフターゲットの例

重要: Curves タブの確認 このステップは、特に Blender や他の外部ソフトウェアからエクスポートされたキャラクターで重要です:

  1. Skeletal Mesh エディタで Curves タブを開く
  2. モーフターゲットに対応するカーブが表示されるか確認する
  3. Curves タブが空の場合、モーフターゲットが存在するなら、モーフターゲットと完全に同じ名前で新しいカーブを手動で追加する

注記: この問題は、モーフターゲットは正常にインポートされるが、アニメーションカーブが自動的に作成されない Blender からのエクスポートでよく発生します。一致するカーブがないと、Control Rig へのベイク後にアニメーションが適切に反映されません。

代替解決策: Blender からのエクスポート中にこの問題を防ぐには、FBX エクスポート設定で Custom PropertiesAnimation を有効にしてみてください。これにより、モーフターゲットと一緒にアニメーションカーブが含まれる可能性があります。

3. リファレンスポーズアニメーションの作成

  1. Create Asset -> Create Animation -> Reference Pose に移動する
  2. アニメーションシーケンスの説明的な名前を入力し、適切な場所に保存する
  3. 作成された Animation Sequence が自動的に開き、ループ再生される空のアニメーションが表示される

リファレンスポーズアセットの作成 リファレンスポーズアセットの命名

  1. 編集を容易にするため、アニメーション再生を停止するには Pause ボタンをクリックする

アニメーション再生の一時停止

4. アニメーションシーケンスの編集

  1. Edit in Sequencer -> Edit with FK Control Rig をクリックする
  2. Bake to Control Rig ダイアログで、設定を変更せずに Bake to Control Rig ボタンをクリックする

FK Control Rig での編集 Control Rig へのベイク

  1. エディタは Sequencer タブが開いた Animation Mode に切り替わる
  2. View Range End Time を 0016 に設定する (これにより Working Range End も自動的に 0016 に設定される)
  3. スライダーの右端をシーケンサーウィンドウの右端までドラッグする

5. アニメーションカーブを準備する

  1. Animation Sequence アセットに戻り、モーフターゲットを Curves リスト内で見つけます (表示されていない場合は、Animation Sequence アセットを閉じて再度開いてください)
  2. ビサームや、Lip Sync に使用したい口の動きに関連しないモーフターゲットはすべて削除します

6. ビセムマッピングを計画する

キャラクターのビセムをプラグインの必要なセットにマッチさせるためのマッピング計画を作成します。例:

Sil -> Sil
PP -> FV
FF -> FV
TH -> TH
DD -> TD
KK -> KG
CH -> CH
SS -> SZ
NN -> NL
RR -> RR
AA -> AA
E -> E
IH -> IH
OH -> O
OU -> U

注意してください。キャラクターのバイセムセットがすべての必要なバイセムに正確に一致しない場合、マッピングが重複しても問題ありません。

7. 各バイセムをアニメーション化する

  1. 各バイセムについて、関連するモーフターゲットカーブを0.0から1.0までアニメーション化します
  2. 各バイセムアニメーションを異なるフレームで開始します
  3. 自然に見えるバイセム形状を作成するために、必要に応じて追加のカーブ(顎/口の開閉、舌の位置など)を設定します

8. ポーズアセットを作成する

  1. Create Asset -> Pose Asset -> Current Animation に移動します
  2. ポーズアセットに説明的な名前を入力し、適切な場所に保存します
  3. 作成されたポーズアセットは自動的に開き、Pose_0Pose_1 などのポーズが表示されます。それぞれがビセムに対応しています
  4. ビセムのウェイトをプレビューして、期待通りに機能することを確認します

ポーズアセットの作成 ポーズアセットの命名 ビセム付きのポーズアセット

9. ポーズアセットを完成させる

  1. 前提条件 セクションのビセム名と一致するように各ポーズの名前を変更します
  2. 使用されていないポーズを削除します

オーディオ処理とブレンディングの設定

ポーズアセットの準備ができたら、オーディオ処理とブレンディングのノードを設定する必要があります:

  1. キャラクターの Animation Blueprint を探すか、作成します
  2. 標準的なプラグイン設定ガイド に記載されているのと同じ手順に従って、オーディオ処理とブレンディングを設定します
  3. Blend Runtime MetaHuman Lip Sync ノードで、デフォルトの MetaHuman ポーズアセットの代わりにカスタムポーズアセットを選択します

カスタムポーズアセットの選択

ボディアニメーションとの組み合わせ

他のボディアニメーションと併せて Lip Sync を実行したい場合:

  1. 標準的なプラグインガイド に記載されているのと同じ手順に従います
  2. MetaHuman のボーン名を使用するのではなく、キャラクターの首部分のスケルトンに対して正しいボーン名を指定していることを確認してください

結果

このセットアップを使用したカスタムキャラクターの例を以下に示します:

例 1: カスタムキャラクターでの Lip Sync

例 2: 異なるビセムシステムでの Lip Sync

例 3: 異なるビセムシステムでの Lip Sync

Lip Sync の品質は、特定のキャラクターとそのビセムの設定の良さに大きく依存します。上記の例は、異なるタイプのカスタムキャラクターと、それらが持つ個別のビセムシステムでプラグインが動作していることを示しています。