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

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

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

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

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

このガイドでは、MetaHuman や ARKit のモーフターゲット命名規則を使用しないカスタムキャラクターについて説明します。

お使いのキャラクターが異なるモーフターゲットセットを使用する場合(例:Daz Genesis、Reallusion CC3/CC4/CC5、Mixamo、または簡略化されたカスタムリグ)、サポートされているオプションは Standard (Faster) モデル であり、以下の手順に従います。

必要な拡張プラグイン: メインのセットアップガイドの前提条件セクションに記載されているとおり、カスタムキャラクターで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 (mild) + tongueUp (if you have tongue rig)舌が歯茎に触れ、顎がわずかに下がる。
KKmouthLeft or mouthRight (mild)わずかな口角の引きは軟口蓋音を近似します。
CHjawOpen (mild) + mouthFunnel (mild)後部歯茎音の組み合わせ
SSmouthFrown歯擦音には軽くしかめ顔を使用します
NNjawOpen (very mild) + mouthCloseほぼ閉じた口で、顎がわずかに開いた状態
RRmouthPucker (mild)R音の微妙な口唇の丸め
AAjawOpen + mouthStretchLeft + mouthStretchRight (or jawOpen + mouthOpen)「ah」の音のための大きく開いた口
EjawOpen (mild) + mouthSmile口を半開きにし、わずかに微笑んだ状態
IHmouthSmile (mild)唇をわずかに広げる
OHmouthFunnel丸みを帯びた開いた形状
OUmouthPuckerきゅっと丸めた唇

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

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

1. キャラクターのスケルタルメッシュを見つけます。

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

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

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

モーフターゲットの確認: スケルタルメッシュに、リップシンクアニメーション用のバイジームとして使用できるモーフターゲット(ブレンドシェイプ)が含まれていることを確認してください。フェイシャルアニメーションに対応しているほとんどのキャラクターには、音素/バイジームのモーフターゲットがいくつか含まれているはずです。

Example of morph targets in a character

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

  1. スケルタルメッシュエディタのカーブタブを開いてください。
  2. モーフターゲットに対応するカーブが表示されているかどうかを確認してください。
  3. カーブタブが空の場合でも、モーフターゲットが存在するなら、モーフターゲットとまったく同じ名前を使用して新しいカーブを手動で追加してください。

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

代替ソリューション: Blenderからのエクスポート中にこの問題を防ぐには、FBXエクスポート設定でカスタムプロパティアニメーションを有効にしてみてください。これにより、モーフターゲットに加えてアニメーションカーブを含めるのに役立つ可能性があります。

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

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

Creating a reference pose asset Naming the reference pose asset

  1. 編集しやすくするには、一時停止ボタンをクリックしてアニメーションの再生を停止します。

Pausing animation playback

4. アニメーションシーケンスを編集する

  1. シーケンサーで編集 -> FKコントロールリグで編集 の順にクリックします。
  2. コントロールリグにベイク ダイアログで、設定を変更せずに コントロールリグにベイク ボタンをクリックします。

Editing with FK Control Rig Baking to 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. Create Asset -> Pose Asset -> Current Animation に移動します。
  2. ポーズアセットに内容が分かる名前を入力し、適切な場所に保存します。
  3. 作成したポーズアセットが自動的に開き、それぞれがビジームに対応する Pose_0Pose_1 などのポーズが表示されます。
  4. ビジームのウェイトをプレビューして、期待どおりに動作することを確認します。

Creating a pose asset Naming the pose asset Pose asset with visemes

9. ポーズアセットを確定する

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

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

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

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

Selecting the custom pose asset

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

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

  1. 標準プラグインガイドに記載されている同じ手順に従ってください
  2. MetaHumanのボーン名ではなく、キャラクターの首のスケルトンに正しいボーン名を必ず指定してください。

結果

このセットアップを使用したカスタムキャラクターの例はこちらです:

Example 1: Lip sync with custom character

Example 2: Lip sync with different viseme system

Example 3: Lip sync with different viseme system

リップシンクの品質は、特定のキャラクターと、そのバイジームがどの程度適切に設定されているかに大きく依存します。上記の例は、それぞれ異なるバイジームシステムを持つさまざまなタイプのカスタムキャラクターでプラグインが動作することを示しています。