プラグイン設定
モデル設定
RealisticモデルおよびMood-Enabled Realisticモデルで信頼性の高い動作を実現するには、長時間の無音状態でジェネレーターを再利用するのではなく、新しいオーディオ再生の前にジェネレーターを再作成してください。詳細はトラブルシューティングのジェネレーターの再作成を参照してください。
標準モデル設定
Create Runtime Viseme Generator ノードは、ほとんどのシナリオで適切に動作するデフォルト設定を使用します。設定はアニメーションブループリントのブレンドノードプロパティを通じて処理されます。
アニメーションブループリントの設定オプションについては、以下のリップシンク設定セクションを参照してください。
Realisticモデル設定
Create Realistic MetaHuman Lip Sync Generator ノードは、ジェネレーターの動作をカスタマイズできるオプションの Configuration パラメーターを受け入れます。
モデルタイプ
Model Type 設定は、使用するリアリスティックモデルのバージョンを決定します。
| モデルタイプ | パフォーマンス | 視覚品質 | ノイズ処理 | 推奨ユースケース |
|---|---|---|---|---|
| Highly Optimized (デフォルト) | 最高パフォーマンス、最低CPU使用率 | 良好な品質 | 背景ノイズや非音声に対して目立つ口の動きが見られる場合あり | クリーンなオーディオ環境、パフォーマンス重視のシナリオ |
| Semi-Optimized | 良好なパフォーマンス、中程度のCPU使用率 | 高品質 | ノイズのあるオーディオに対してより安定 | パフォーマンスと品質のバランス、混合オーディオ環境 |
| Original | 最新CPUでのリアルタイム使用に適切 | 最高品質 | 背景ノイズや非音声に対して最も安定 | 高品質プロダクション、ノイズの多いオーディオ環境、最大精度が必要な場合 |
パフォーマンス設定
Intra Op Threads: 内部モデル処理操作に使用するスレッド数を制御します。
- 0 (デフォルト/自動): 自動検出を使用(通常は利用可能なCPUコアの1/4、最大4)
- 1-16: スレッド数を手動で指定。値が大きいとマルチコアシステムでのパフォーマンスが向上する可能性がありますが、CPU使用率が増加します
Inter Op Threads: 異なるモデル操作の並列実行に使用するスレッド数を制御します。
- 0 (デフォルト/自動): 自動検出を使用(通常は利用可能なCPUコアの1/8、最大2)
- 1-8: スレッド数を手動で指定。リアルタイム処理では通常低く設定します
処理チャンクサイズ
Processing Chunk Size は、各推論ステップで処理されるサンプル数を決定します。デフォルト値は 160サンプル(16kHzで10msのオーディオ)です。
- 小さい値はより頻繁な更新を提供しますが、CPU使用率が増加します
- 大きい値はCPU負荷を軽減しますが、リップシンクの応答性が低下する可能性があります
- 最適なアライメントには160の倍数を使用することを推奨します

Mood-Enabledモデル設定
Create Realistic MetaHuman Lip Sync With Mood Generator ノードは、基本的なリアリスティックモデルを超えた追加の設定オプションを提供します。
基本設定
Lookahead Ms: リップシンクの精度向上のための先読みタイミング(ミリ秒)。
- デフォルト: 80ms
- 範囲: 20ms~200ms(20で割り切れる必要があります)
- 値が大きいほど同期が向上しますが、レイテンシーが増加します
Output Type: 生成されるフェイシャルコントロールを制御します。
- Full Face: 81すべてのフェイシャルコントロール(眉毛、目、鼻、口、顎、舌)
- Mouth Only: 口、顎、舌に関連するコントロールのみ
Performance Settings: 通常のRealisticモデルと同じIntra Op ThreadsおよびInter Op Threads設定を使用します。
ムード設定
利用可能なムード:
- Neutral, Happy, Sad, Disgust, Anger, Surprise, Fear
- Confident, Excited, Bored, Playful, Confused
Mood Intensity: ムードがアニメーションに影響を与える強さを制御します(0.0~1.0)
ランタイムムード制御
以下の関数を使用して、実行中にムード設定を調整できます。
- Set Mood: 現在のムードタイプを変更します
- Set Mood Intensity: ムードがアニメーションに影響を与える強さを調整します(0.0~1.0)
- Set Lookahead Ms: 同期のための先読みタイミングを変更します
- Set Output Type: Full FaceとMouth Onlyのコントロールを切り替えます

ムード選択ガイド
コンテンツに基づいて適切なムードを選択してください。
| ムード | 最適な用途 | 標準的な強度範囲 |
|---|---|---|
| Neutral | 一般的な会話、ナレーション、デフォルト状態 | 0.5 - 1.0 |
| Happy | ポジティブなコンテンツ、明るい会話、祝賀 | 0.6 - 1.0 |
| Sad | 憂鬱なコンテンツ、感情的なシーン、物悲しい瞬間 | 0.5 - 0.9 |
| Disgust | 否定的な反応、不快なコンテンツ、拒絶 | 0.4 - 0.8 |
| Anger | 攻撃的な会話、対立シーン、フラストレーション | 0.6 - 1.0 |
| Surprise | 予期せぬ出来事、暴露、衝撃的な反応 | 0.7 - 1.0 |
| Fear | 脅威的な状況、不安、緊張した会話 | 0.5 - 0.9 |
| Confident | プロフェッショナルなプレゼンテーション、リーダーシップのある会話、断定的な発言 | 0.7 - 1.0 |
| Excited | エネルギッシュなコンテンツ、発表、熱狂的な会話 | 0.8 - 1.0 |
| Bored | 単調なコンテンツ、無関心な会話、疲れた発言 | 0.3 - 0.7 |
| Playful | カジュアルな会話、ユーモア、軽快なやり取り | 0.6 - 0.9 |
| Confused | 疑問の多い会話、不確かさ、当惑 | 0.4 - 0.8 |
アニメーションブループリント設定
リップシンク設定
- 標準モデル
- Realistic Models
Blend Runtime MetaHuman Lip Sync ノードには、プロパティパネルに設定オプションがあります。
| プロパティ | デフォルト | 説明 |
|---|---|---|
| Interpolation Speed | 25 | 口の動きがビジーム間で遷移する速度を制御します。値が大きいほど、より速く急な遷移になります。 |
| Reset Time | 0.2 | リップシンクがリセットされるまでの時間(秒)。オーディオが停止した後にリップシンクが継続するのを防ぐのに役立ちます。 |
笑顔アニメーション
オーディオで検出された笑いに動的に反応する笑顔アニメーションを追加することもできます。
Blend Runtime MetaHuman Laughterノードを追加しますRuntimeVisemeGenerator変数をViseme Generatorピンに接続します- すでにリップシンクを使用している場合:
Blend Runtime MetaHuman Lip Syncノードの出力をBlend Runtime MetaHuman LaughterノードのSource Poseに接続しますBlend Runtime MetaHuman Laughterノードの出力をOutput PoseのResultピンに接続します
- リップシンクなしで笑顔のみを使用する場合:
- ソースポーズを
Blend Runtime MetaHuman LaughterノードのSource Poseに直接接続します - 出力を
Resultピンに接続します
- ソースポーズを

オーディオで笑いが検出されると、キャラクターが動的にアニメーションします。
笑いの設定
Blend Runtime MetaHuman Laughter ノードには、独自の設定オプションがあります:
| プロパティ | デフォルト | 説明 |
|---|---|---|
| Interpolation Speed | 25 | 笑いアニメーション間の口の動きの遷移速度を制御します。値が大きいほど、より速く急激な遷移になります。 |
| Reset Time | 0.2 | 笑いがリセットされるまでの時間(秒)です。オーディオが停止した後も笑いが続くのを防ぐのに役立ちます。 |
| Max Laughter Weight | 0.7 | 笑いアニメーションの最大強度をスケーリングします(0.0 - 1.0)。 |
注: 笑いの検出は、現在 Standard Model でのみ利用可能です。
Blend Realistic MetaHuman Lip Sync ノードには、プロパティパネルに設定オプションがあります:
| プロパティ | デフォルト | 説明 |
|---|---|---|
| Interpolation Speed | 30 | アクティブな発話中の表情の遷移速度を制御します。値が大きいほど、より速く急激な遷移になります。 |
| Idle Interpolation Speed | 15 | アイドル/ニュートラル状態への表情の戻り速度を制御します。値が小さいほど、よりスムーズで段階的な休止ポーズへの復帰になります。 |
| Reset Time | 0.2 | リップシンクがアイドル状態にリセットされるまでの時間(秒)です。オーディオ停止後に表情が続くのを防ぐのに役立ちます。 |
| Preserve Idle State | false | 有効にすると、アイドル期間中にニュートラルにリセットする代わりに、最後の感情状態を保持します。 |
| Preserve Eye Expressions | true | アイドル状態中に目の表情に関連するフェイシャルコントロールを保持するかどうかを制御します。Preserve Idle State が有効な場合のみ有効です。 |
| Preserve Brow Expressions | true | アイドル状態中に眉の表情に関連するフェイシャルコントロールを保持するかどうかを制御します。Preserve Idle State が有効な場合のみ有効です。 |
| Preserve Mouth Shape | false | アイドル状態中に口の形状コントロール(舌や顎などの発話固有の動きを除く)を保持するかどうかを制御します。Preserve Idle State が有効な場合のみ有効です。 |
アイドル状態の保持
Preserve Idle State 機能は、Realistic モデルが無音期間をどのように処理するかに対応します。個別のビジームを使用し、無音時に常にゼロ値に戻る Standard モデルとは異なり、Realistic モデルのニューラルネットワークは、MetaHuman のデフォルトの休止ポーズとは異なる微妙なフェイシャルポジショニングを維持する場合があります。
有効にするタイミング:
- 発話セグメント間での感情表現の維持
- キャラクターの性格特性の保持
- シネマティックシーケンスでの視覚的な連続性の確保
領域別制御オプション:
- Eye Expressions: 目の細め、見開き、まぶたの位置を保持します
- Brow Expressions: 眉と額の位置を維持します
- Mouth Shape: 発話の動き(舌、顎)をリセットしながら、口の全体的な曲線を維持します
既存のアニメーションとの組み合わせ
既存のボディアニメーションやカスタムフェイシャルアニメーションを上書きせずに、リップシンクと笑いを適用するには:
- ボディアニメーションと最終出力の間に
Layered blend per boneノードを追加します。Use Attached Parentが true であることを確認してください。 - レイヤー設定を構成します:
Layer Setup配列に 1 アイテム を追加します- レイヤーの
Branch Filtersに 3 アイテム を追加し、以下のBone Nameを設定します:FACIAL_C_FacialRootFACIAL_C_Neck2RootFACIAL_C_Neck1Root
- カスタムフェイシャルアニメーションの場合の重要事項:
Curve Blend Optionで "Use Max Value" を選択します。これにより、カスタムフェイシャルアニメーション(表情、感情など)をリップシンクの上に適切にレイヤーできます。 - 接続を行います:
- 既存のアニメーション(
BodyPoseなど)→Base Pose入力 - フェイシャルアニメーション出力(リップシンクや笑いノードから)→
Blend Poses 0入力 - Layered blend ノード → 最終
Resultポーズ
- 既存のアニメーション(

モーフターゲットセットの選択
- Standard Model
- Realistic Models
Standard Model はポーズアセットを使用します。これは、カスタムポーズアセットのセットアップを通じて、本質的に任意のモーフターゲット命名規則をサポートします。追加の設定は必要ありません。
Blend Realistic MetaHuman Lip Sync ノードには、フェイシャルアニメーションに使用するモーフターゲット命名規則を決定する Morph Target Set プロパティがあります:
| Morph Target Set | 説明 | 使用例 |
|---|---|---|
| MetaHuman (デフォルト) | 標準の MetaHuman モーフターゲット名(例: CTRL_expressions_jawOpen) | MetaHuman キャラクター |
| ARKit | Apple ARKit 互換名(例: JawOpen、MouthSmileLeft) | ARKit ベースのキャラクター |
リップシンク動作の微調整
特定のリップシンクカーブのスケーリング
Modify Curve ノードを使用して、リップシンクによって生成される個々のフェイシャルムーブメントを減衰(または増幅)できます。これは、特定のカーブがオーディオコンテンツやキャラクターに対して目立ちすぎる場合に便利です。
セットアップ:
- リップシンクブレンドノードの後に、
Modify Curveノードを追加します - ノードを右クリックして Add Curve Pin を選択し、スケーリングしたいカーブ名を入力します
- ノードの Apply Mode プロパティを Scale に設定します
- Value パラメータを設定します: 1.0 未満の値は動きを減衰させ、1.0 を超える値は増幅します(例: 0.8 = 20% 削減)
一般的にスケーリングされるカーブ:
| カーブ名 | 目的 | 適用対象 | 一般的な調整 |
|---|---|---|---|
CTRL_expressions_tongueOut | 特定の音素における前方への舌の突出 | Standard model | 0.8 で突出を軽減 |
CTRL_expressions_jawOpen | 顎の開き範囲 | Realistic models | 0.9 で顎の動きを軽減 |
同じ Modify Curve ノードに複数のカーブピンを追加して、複数のカーブを一度にスケーリングできます。
ムード固有の微調整
ムード対応モデルの場合、特定の感情表現を微調整できます:
眉のコントロール:
CTRL_expressions_browRaiseInL/CTRL_expressions_browRaiseInR- 内側の眉上げCTRL_expressions_browRaiseOuterL/CTRL_expressions_browRaiseOuterR- 外側の眉上げCTRL_expressions_browDownL/CTRL_expressions_browDownR- 眉下げ
目の表情コントロール:
CTRL_expressions_eyeSquintInnerL/CTRL_expressions_eyeSquintInnerR- 目を細めるCTRL_expressions_eyeCheekRaiseL/CTRL_expressions_eyeCheekRaiseR- 頬上げ
モデルの比較と選択
モデル間の選択
プロジェクトにどのリップシンクモデルを使用するかを決定する際は、以下の要素を考慮してください:
| 考慮事項 | Standard Model | Realistic Model | Mood-Enabled Realistic Model |
|---|---|---|---|
| キャラクター互換性 | MetaHuman およびすべてのカスタムキャラクタータイプ | MetaHuman(および ARKit)キャラクター | MetaHuman(および ARKit)キャラクター |
| 視覚品質 | 効率的なパフォーマンスで良好なリップシンク | より自然な口の動きによるリアリズムの向上 | 感情表現を伴うリアリズムの向上 |
| パフォーマンス | モバイル/VR を含むすべてのプラットフォーム向けに最適化 | より高いリソース要件 | より高いリソース要件 |
| 機能 | 14 のビジーム、笑い検出 | 81 のフェイシャルコントロール、3 つの最適化レベル | 81 のフェイシャルコントロール、12 のムード、設定可能な出力 |
| プラットフォームサポート | Windows、Android、Quest | Windows、Mac、iOS、Linux、Android、Quest | Windows、Mac、iOS、Linux、Android、Quest |
| ユースケース | 一般的なアプリケーション、ゲーム、VR/AR、モバイル | シネマティック体験、クローズアップインタラクション | 感情的なストーリーテリング、高度なキャラクターインタラクション |
エンジンバージョンの互換性
Unreal Engine 5.2 を使用している場合、UE のリサンプリングライブラリのバグにより、Realistic Models が正しく動作しない可能性があります。信頼性の高いリップシンク機能が必要な UE 5.2 ユーザーは、代わりに Standard Model を使用してください。
この問題は UE 5.2 に固有のものであり、他のエンジンバージョンには影響しません。
パフォーマンスに関する推奨事項
- ほとんどのプロジェクトでは、Standard Model が品質とパフォーマンスの優れたバランスを提供します
- MetaHuman キャラクターに最高の視覚的忠実度が必要な場合は、Realistic Model を使用してください
- アプリケーションにとって感情表現の制御が重要な場合は、Mood-Enabled Realistic Model を使用してください
- モデルを選択する際は、ターゲットプラットフォームのパフォーマンス能力を考慮してください
- 特定のユースケースに最適なバランスを見つけるために、さまざまな最適化レベルをテストしてください
トラブルシューティング
一般的な問題
Realistic Models のジェネレーター再作成: Realistic Models で信頼性が高く一貫した動作を得るには、非アクティブ期間の後に新しいオーディオデータを供給するたびにジェネレーターを再作成することをお勧めします。これは、ONNX ランタイムの動作により、無音期間後にジェネレーターを再利用するとリップシンクが機能しなくなる可能性があるためです。
たとえば、Play Sound 2D を呼び出すときや、サウンドウェーブの再生とリップシンクを開始する他の方法を使用するときなど、再生開始ごとにリップシンクジェネレーターを再作成できます:

Runtime Text To Speech 統合のためのプラグインの場所: Runtime MetaHuman Lip Sync を Runtime Text To Speech と一緒に使用する場合(両方のプラグインが ONNX Runtime を使用)、プラグインがエンジンの Marketplace フォルダにインストールされていると、パッケージ化されたビルドで問題が発生する可能性があります。これを修正するには:
- UE インストールフォルダの
\Engine\Plugins\Marketplaceにある両方のプラグインを見つけます(例:C:\Program Files\Epic Games\UE_5.6\Engine\Plugins\Marketplace) RuntimeMetaHumanLipSyncとRuntimeTextToSpeechの両方のフォルダをプロジェクトのPluginsフォルダに移動します- プロジェクトに
Pluginsフォルダがない場合は、.uprojectファイルと同じディレクトリに作成します - Unreal Editor を再起動します
これにより、複数の ONNX Runtime ベースのプラグインがエンジンの Marketplace ディレクトリからロードされたときに発生する可能性のある互換性の問題に対処します。
パッケージング設定(Windows): Windows 上のパッケージ化されたプロジェクトでリップシンクが正しく動作しない場合は、Development の代わりに Shipping ビルド設定を使用していることを確認してください。Development 設定は、パッケージ化されたビルドで Realistic モデルの ONNX ランタイムに問題を引き起こす可能性があります。
修正するには:
- プロジェクト設定 → パッケージングで、ビルド設定を Shipping に設定します
- プロジェクトを再パッケージ化します

一部の Blueprint のみのプロジェクトでは、Shipping が選択されていても、Unreal Engine が Development 設定でビルドを続ける場合があります。これが発生した場合は、少なくとも 1 つの C++ クラス(空でも可)を追加して、プロジェクトを C++ プロジェクトに変換します。これを行うには、UE エディターメニューで Tools → New C++ Class に移動し、空のクラスを作成します。これにより、プロジェクトが Shipping 設定で正しくビルドされるようになります。プロジェクトの機能は Blueprint のみのままにできます。C++ クラスは、適切なビルド設定のためにのみ必要です。
リップシンク応答性の低下: Streaming Sound Wave または Capturable Sound Wave を使用しているときに、リップシンクの応答性が時間の経過とともに低下する場合、これはメモリの蓄積が原因である可能性があります。デフォルトでは、新しいオーディオが追加されるたびにメモリが再割り当てされます。この問題を防ぐには、ReleaseMemory 関数を定期的に(たとえば 30 秒ごとに)呼び出して、蓄積されたメモリを解放します。
パフォーマンスの最適化:
- パフォーマンス要件に基づいて、Realistic モデルの Processing Chunk Size を調整します
- ターゲットハードウェアに適したスレッド数を使用します
- 完全なフェイシャルアニメーションが必要ない場合は、ムード対応モデルに Mouth Only 出力タイプの使用を検討してください