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

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

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

リップシンクモデルに関する重要な注意点

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

カスタムキャラクターは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 を特定する

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

2. モーフターゲットとカーブを検証する

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

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

重要: 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. リップシンクに使用したいビセームや口の動きに関連しないモーフターゲットはすべて削除します

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. アセットを作成 -> ポーズアセット -> 現在のアニメーション に移動します
  2. ポーズアセットに説明的な名前を入力し、適切な場所に保存します
  3. 作成されたポーズアセットは自動的に開き、Pose_0Pose_1 などのポーズが表示されます。それぞれがビセムに対応しています
  4. ビセムの重みをプレビューして、期待通りに機能することを確認します

ポーズアセットの作成 ポーズアセットに名前を付ける ビセム付きのポーズアセット

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

  1. 前提条件 セクションのビセム名に合わせて各ポーズの名前を変更します
  2. 未使用のポーズを削除します

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

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

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

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

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

他のボディアニメーションと一緒にリップシンクを実行したい場合:

  1. 標準プラグインガイドで説明されているのと同じ手順に従います
  2. MetaHumanのボーン名を使用する代わりに、キャラクターの首スケルトンに正しいボーン名を指定してください

結果

この設定を使用したカスタムキャラクターの例を以下に示します:

例1:カスタムキャラクターでのリップシンク

例2:異なるビセムシステムでのリップシンク

例3:異なるビセムシステムでのリップシンク

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