外掛程式設定
模型設定
為確保 Realistic 和 Mood-Enabled Realistic 模型可靠運作,請在每次新的音訊播放前重新建立生成器,而非在長時間靜音期間重複使用同一個。詳情請參閱疑難排解中的生成器重新建立。
標準模型設定
Create Runtime Viseme Generator 節點使用適用於大多數情境的預設設定。設定透過動畫藍圖混合節點屬性進行管理。
有關動畫藍圖設定選項,請參閱下方嘴型同步設定一節。
Realistic 模型設定
Create Realistic MetaHuman Lip Sync Generator 節點接受一個可選的 Configuration 參數,讓您自訂生成器的行為:
模型類型
Model Type 設定決定使用哪個版本的 realistic 模型:
| 模型類型 | 效能 | 視覺品質 | 噪音處理 | 建議使用情境 |
|---|---|---|---|---|
| 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 節點提供超越基本 realistic 模型的額外設定選項:
基本設定
Lookahead Ms: 用於提升嘴型同步準確度的前瞻時間(毫秒)。
- 預設值:80ms
- 範圍:20ms 至 200ms(必須能被 20 整除)
- 較高數值提供更好的同步,但會增加延遲
Output Type: 控制生成哪些臉部控制項。
- Full Face:全部 81 個臉部控制項(眉毛、眼睛、鼻子、嘴巴、下巴、舌頭)
- Mouth Only:僅嘴巴、下巴和舌頭相關的控制項
效能設定: 使用與一般 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 |
動畫藍圖設定
嘴型同步設定
- Standard Model
- 寫實模型
Blend Runtime MetaHuman Lip Sync 節點在其屬性面板中具有設定選項:
| 屬性 | 預設值 | 說明 |
|---|---|---|
| Interpolation Speed | 25 | 控制嘴部動作在 viseme 之間轉換的速度。較高數值會產生更快、更突然的轉換。 |
| 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 節點有其自身的配置選項:
| 屬性 | 預設值 | 說明 |
|---|---|---|
| 插值速度 | 25 | 控制嘴部動作在笑聲動畫之間轉換的速度。數值越高,轉換越快、越突兀。 |
| 重置時間 | 0.2 | 笑聲重置前的持續時間(秒)。這有助於防止音訊停止後笑聲繼續。 |
| 最大笑聲權重 | 0.7 | 縮放笑聲動畫的最大強度(0.0 - 1.0)。 |
注意: 笑聲偵測目前僅適用於標準模型。
Blend Realistic MetaHuman Lip Sync 節點在其屬性面板中有配置選項:
| 屬性 | 預設值 | 說明 |
|---|---|---|
| 插值速度 | 30 | 控制活躍語音期間面部表情轉換的速度。數值越高,轉換越快、越突兀。 |
| 靜止插值速度 | 15 | 控制面部表情恢復到靜止/中性狀態的速度。數值越低,恢復到靜止姿態的過渡越平滑、越漸進。 |
| 重置時間 | 0.2 | 嘴型同步重置為靜止狀態前的持續時間(秒)。有助於防止音訊停止後表情繼續。 |
| 保留靜止狀態 | false | 啟用後,在靜止期間保留最後的情緒狀態,而不是重置為中性狀態。 |
| 保留眼部表情 | true | 控制靜止狀態下是否保留與眼睛相關的面部控制項。僅在啟用「保留靜止狀態」時有效。 |
| 保留眉毛表情 | true | 控制靜止狀態下是否保留與眉毛相關的面部控制項。僅在啟用「保留靜止狀態」時有效。 |
| 保留嘴部形狀 | false | 控制靜止狀態下是否保留嘴部形狀控制項(不包括特定於語音的動作,如舌頭和下頜)。僅在啟用「保留靜止狀態」時有效。 |
靜止狀態保留
保留靜止狀態功能解決了寫實模型在靜默期間的處理方式。與使用離散視位元且始終在靜默期間返回零值的標準模型不同,寫實模型的神經網路可能會維持與 MetaHuman 預設靜止姿態不同的微妙面部定位。
何時啟用:
- 在語音片段之間維持情緒表達
- 保留角色個性特徵
- 確保電影序列中的視覺連續性
區域控制選項:
- 眼部表情:保留眼睛瞇起、睜大和眼瞼位置
- 眉毛表情:維持眉毛和前額位置
- 嘴部形狀:保留一般嘴部曲線,同時允許語音動作(舌頭、下頜)重置
與現有動畫結合
要將嘴型同步和笑聲與現有的身體動畫和自訂面部動畫結合而不覆蓋它們:
- 在身體動畫和最終輸出之間添加一個
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輸入 - 分層混合節點 → 最終
Result姿態
- 現有動畫(例如

變形目標集選擇
- 標準模型
- 寫實模型
標準模型使用姿勢資產,這些資產透過自訂姿勢資產設定從根本上支援任何變形目標命名慣例。無需額外配置。
Blend Realistic MetaHuman Lip Sync 節點包含一個 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 | 某些音素期間舌頭向前突出 | 標準模型 | 0.8 以減少突出 |
CTRL_expressions_jawOpen | 下頜張開範圍 | 寫實模型 | 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- 臉頰上提
模型比較與選擇
在模型之間選擇
在決定為您的專案使用哪個嘴型同步模型時,請考慮以下因素:
| 考量因素 | 標準模型 | 寫實模型 | 啟用情緒的寫實模型 |
|---|---|---|---|
| 角色相容性 | 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 重採樣庫中的一個錯誤,寫實模型可能無法正常運作。對於需要可靠嘴型同步功能的 UE 5.2 用戶,請改用 標準模型。
此問題特定於 UE 5.2,不影響其他引擎版本。
效能建議
- 對於大多數專案,標準模型提供了品質和效能的絕佳平衡
- 當您需要 MetaHuman 角色最高的視覺保真度時,請使用 寫實模型
- 當情緒表達控制對您的應用程式很重要時,請使用 啟用情緒的寫實模型
- 在選擇模型時,請考慮目標平台的效能能力
- 測試不同的最佳化級別,為您的特定使用案例找到最佳平衡
故障排除
常見問題
為寫實模型重新建立生成器: 為了讓寫實模型可靠且一致地運作,建議在非活動期後每次要輸入新的音訊資料時重新建立生成器。這是由於 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
這解決了從引擎的 Marketplace 目錄載入多個基於 ONNX Runtime 的插件時可能發生的相容性問題。
打包配置 (Windows): 如果在 Windows 上打包的專案中嘴型同步無法正常運作,請確保您使用的是 Shipping 建置配置而不是 Development。Development 配置可能會在打包建置中導致寫實模型的 ONNX 執行時出現問題。
要解決此問題:
- 在您的專案設定 → 打包中,將建置配置設定為 Shipping
- 重新打包您的專案

在某些僅藍圖專案中,即使選擇了 Shipping,Unreal Engine 仍可能以 Development 配置進行建置。如果發生這種情況,請透過添加至少一個 C++ 類別(可以是空的)將您的專案轉換為 C++ 專案。為此,請在 UE 編輯器選單中前往 Tools → New C++ Class 並建立一個空類別。這將強制專案在 Shipping 配置中正確建置。您的專案在功能上可以保持僅藍圖,C++ 類別僅用於正確的建置配置。
嘴型同步反應性下降: 如果您在使用 Streaming Sound Wave 或 Capturable Sound Wave 時發現嘴型同步隨著時間推移反應性變差,這可能是由記憶體累積引起的。預設情況下,每次附加新音訊時都會重新分配記憶體。為防止此問題,請定期呼叫 ReleaseMemory 函數來釋放累積的記憶體,例如每 30 秒左右。
效能最佳化:
- 根據您的效能需求調整寫實模型的處理區塊大小
- 為您的目標硬體使用適當的執行緒數量
- 當不需要完整面部動畫時,考慮為啟用情緒的模型使用僅嘴部輸出類型