外掛設定
模型設定
為確保「Realistic」與「Mood-Enabled Realistic」模型能可靠運作,請在每次新的音訊播放前重新建立生成器,而非在長時間靜音期間重複使用同一個生成器。詳情請參閱疑難排解中的重新建立生成器。
標準模型配置
Create Runtime Viseme Generator 節點使用適用於大多數情境的預設設定。設定是透過 Animation Blueprint 混合節點屬性來處理的。
如需動畫藍圖(Animation Blueprint)的設定選項,請參閱下方的嘴型同步設定一節。
真實模型配置
Create Realistic MetaHuman Lip Sync Generator 節點接受一個可選的 Configuration 參數,讓您能自訂產生器的行為:
模型類型
模型類型設定決定要使用哪個版本的擬真模型:
| 模型類型 | 效能 | 視覺品質 | 噪音處理 | 建議使用情境 |
|---|---|---|---|---|
| 高度最佳化(預設) | 最高效能,最低 CPU 使用率 | 良好品質 | 在背景噪音或非語音聲音下,可能出現明顯的嘴部動作 | 乾淨的音訊環境、效能關鍵的情境 |
| 半最佳化 | 良好效能,中等 CPU 使用率 | 高品質 | 對吵雜音訊有更好的穩定性 | 效能與品質兼顧,混合音訊條件 |
| 原始版 | 適用於現代 CPU 上的即時使用 | 最高品質 | 在背景噪音和非語音聲音下最穩定 | 高品質製作、吵雜音訊環境、需要最高精確度時 |
效能設定
Intra Op Threads: 控制用於內部模型處理作業的執行緒數量。
- 0(預設/自動):使用自動偵測(通常為可用 CPU 核心數的 1/4,最多 4 個)
- 1-16:手動指定執行緒數量。較高的數值可能提升多核心系統的效能,但會使用更多 CPU 資源。
Inter Op 執行緒: 控制用於不同模型操作平行執行的執行緒數量。
- 0(預設/自動):使用自動偵測(通常為可用 CPU 核心數的 1/8,最多 2 個)
- 1-8:手動指定執行緒數量。通常為了即時處理而保持較低數值。
處理區塊大小
處理區塊大小決定每次推論步驟中處理多少樣本。預設值為160 個樣本(在 16kHz 下相當於 10 毫秒的音訊):
- 較小的數值提供更頻繁的更新,但會增加 CPU 使用率
- 較大的數值可降低 CPU 負載,但可能降低口型同步的反應速度
- 建議使用 160 的倍數以達到最佳對齊效果

情緒啟用模型設定
Create Realistic MetaHuman Lip Sync With Mood Generator 節點提供了超越基本寫實模型的額外配置選項:
基本配置
前瞻毫秒數: 前瞻毫秒數,用於提升唇形同步的精確度。
- 預設值:80毫秒
- 範圍:20毫秒至200毫秒(必須能被20整除)
- 較高的數值可提供更好的同步效果,但會增加延遲
輸出類型: 控制生成哪些臉部控制項。
- 全臉:全部 81 個臉部控制項(眉毛、眼睛、鼻子、嘴巴、下巴、舌頭)
- 僅嘴巴:僅與嘴巴、下巴和舌頭相關的控制項
效能設定: 使用與一般擬真模型相同的 Intra Op Threads 與 Inter Op Threads 設定。
情緒設定
可用情緒:
- 中性、開心、悲傷、厭惡、憤怒、驚訝、恐懼
- 自信、興奮、無聊、俏皮、困惑
**情緒強度:**控制情緒對動畫的影響程度(0.0 至 1.0)
Runtime 情緒控制
您可以在執行期間使用以下函式調整情緒設定:
- 設定情緒:變更目前的情緒類型
- 設定情緒強度:調整情緒對動畫的影響程度(0.0 至 1.0)
- 設定前瞻毫秒數:修改同步化的前瞻時間
- 設定輸出類型:在「全臉」與「僅嘴部」控制之間切換

情緒選擇指南
根據您的內容選擇合適的情緒:
| Mood | 最適合 | 典型強度範圍 |
|---|---|---|
| 中性 | 一般對話、旁白、預設狀態 | 0.5 - 1.0 |
| 開心 | 正面內容、愉快的對話、慶祝場合 | 0.6 - 1.0 |
| 悲傷 | 憂鬱的內容、情感場景、陰鬱的時刻 | 0.5 - 0.9 |
| 厭惡 | 負面反應、令人反感的內容、拒絕 | 0.4 - 0.8 |
| 憤怒 | 攻擊性的對話、對峙的場景、挫折感 | 0.6 - 1.0 |
| 驚訝 | 意外事件、真相揭露、震驚反應 | 0.7 - 1.0 |
| 恐懼 | 威脅性的情境、焦慮、緊張的對話 | 0.5 - 0.9 |
| 自信 | 專業簡報、領導對話、堅定的言詞 | 0.7 - 1.0 |
| 興奮 | 充滿活力的內容、公告、熱情的對話 | 0.8 - 1.0 |
| 無聊 | 單調的內容、缺乏興趣的對話、疲倦的言詞 | 0.3 - 0.7 |
| 俏皮 | 輕鬆的對話、幽默、輕鬆愉快的互動 | 0.6 - 0.9 |
| 困惑 | 充滿疑問的對話、不確定、困惑 | 0.4 - 0.8 |
動畫藍圖設定
唇形同步設定
- 標準模型
- 逼真模型
Blend Runtime MetaHuman Lip Sync 節點在其屬性面板中具有配置選項:
| 屬性 | 預設值 | 說明 |
|---|---|---|
| 插值速度 | 25 | 控制嘴部動作在不同視素之間轉換的速度。數值越高,轉換越快且越突兀。 |
| 重置時間 | 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 | 控制待機狀態下是否保留嘴型控制(不包括舌頭和下顎等與語音相關的特定動作)。僅在啟用「保留待機狀態」時有效。 |
閒置狀態保留
保留閒置狀態功能旨在處理 Realistic 模型在靜默期間的表現方式。與 Standard 模型不同,Standard 模型使用離散的 viseme,並在靜默時一致地回歸到零值;而 Realistic 模型的神經網路可能會維持細微的面部位置,這與 MetaHuman 的預設靜止姿勢有所不同。
何時啟用:
- 在語音片段之間維持情緒表情
- 保留角色性格特質
- 確保電影過場序列中的視覺連續性
區域控制選項:
- 眼部表情:保留眼睛瞇起、睜大以及眼瞼位置
- 眉毛表情:維持眉毛與前額的位置
- 嘴型:保留整體嘴部曲線,同時允許說話動作(舌頭、下巴)重置
結合現有動畫
偏好觀看影片勝過閱讀文字嗎?請查看涵蓋此確切設定的影片教學。
若要將嘴型同步與笑聲套用至既有的身體動畫與自訂臉部動畫上,而不覆蓋它們:
此設定適用於臉部動畫藍圖(Animation Blueprint),因為口型同步(lip sync)並非身體動畫藍圖的一部分。對於自訂身體動畫(例如軀幹、手臂及其他身體動作),只需將您的動畫序列(透過 Sequence Player)直接連接到身體動畫藍圖中的輸出姿勢即可。該處無需額外設定。
- 在身體動畫與最終輸出之間新增一個
Layered blend per bone節點。確保Use Attached Parent為 true。 - 設定圖層配置:
- 在
Layer Setup陣列中新增 1 個項目 - 為該圖層的
Branch Filters新增 3 個項目,其Bone Name如下:FACIAL_C_FacialRootFACIAL_C_Neck2RootFACIAL_C_Neck1Root
- 在
- 自訂臉部動畫的重要事項: 在
曲線混合選項中,選擇 「使用最大值」。這可讓自訂臉部動畫(表情、情緒等)正確地疊加在口型同步之上。 - 建立連接:
- 您的自訂動畫(通常是帶有所需動畫序列資產的
Sequence Player)→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 的角色 |
將角色轉換為 ARKit 或 MetaHuman 混合形狀
如果您的角色原生不使用 ARKit 標準的 blendshape 名稱,有幾種常見的商業角色系統可以轉換以產生這些名稱(或者,對於 CC5,可以直接轉換為原生 MetaHuman blendshapes)。這讓您可以使用上述的 ARKit 或 MetaHuman Morph Target Set,而不必像 Standard Model 那樣需要進行手動 viseme 對應流程。 CC4 與 CC5 角色在此處的處理方式不同,因為 CC5 角色可以直接共用 MetaHuman 的原生臉部綁定,完全不需要進行 ARKit 轉換。 CC5:轉換為 MetaHuman 混合變形(建議使用) 如果您的角色是使用 HD 臉部設定檔 在 CC5 中建置的,它已經具備 MetaHuman 的臉部控制與骨架,因此無需手動生成 ARKit 混合變形。取而代之的是: 匯入後,請選擇 MetaHuman 形變目標集 選項,而非 ARKit,因為角色的混合變形已使用原生 MetaHuman 命名。 CC4(或未使用 HD 設定檔的 CC5):轉換為 ARKit 混合形狀 若您使用的是 CC4,或是不採用 HD 臉部設定檔的 CC5 角色,請改用手動 ARKit 轉換。開始前,請確認角色的「臉部設定檔」已設為 CC4 Extended(而非 Standard、Extended-Plus 或較新的 HD Facial Profile)。此腳本的 blendshape 對應是針對 Extended 的滑桿名稱寫死的,其他設定檔使用不同的命名慣例,腳本會靜默跳過或無法找到預期的滑桿。 下載此腳本: 在文字編輯器中開啟腳本,並在標示為 在 Character Creator 中,選擇您的角色,然後在頂部選單的 Script 下選取 Load Python。接著選取您剛才編輯的腳本。該腳本現在會從預設的 Reallusion 滑桿建立完整的 ARKit 混合形狀組,並將其匯出為 OBJ 檔案。這可能需要幾分鐘的時間。 您現在可以透過前往 面部輪廓編輯器 視窗來匯入這些形狀。點擊 編輯表情 按鈕,然後在 批次匯入 下拉選單中選擇 OBJ。 您可以在這裡匯入先前參照的資料夾。這將列出所有 ARKit 形狀。在目標類別中輸入名稱,例如 AR_Kit,然後點擊確定。 這將在 Expression 下建立一個新類別。您可以停用所有其他類別。 一旦設定好 ARKit 類別,照常將角色匯出為 FBX。這會賦予角色標準的 52 個 ARKit 混合形狀,接著您就可以搭配上方 ARKit 變形目標集 選項來使用。 注意: 在 CC4 的骨架中,下顎運動部分是由骨骼旋轉驅動,而非純粹的 blendshape,因此 Daz 的 FACS 形變目標,原生支援 Genesis 8.1 與 Genesis 9,已可直接相容於 ARKit,無需重新命名。一般 Genesis 8(非 8.1)預設不包含這些功能。您需要改用 Genesis 8.1,或另外新增獨立的 FACS 形變目標套件。 目前積極維護中的 Diffeomorphic 附加元件(一個 Daz Studio 與 Blender 的橋接工具,並非 Daz 3D 的附屬產品)是將這些內容匯入 Unreal 的推薦方式: 匯出後,請使用上方的 ARKit 形變目標集 選項。 注意: 睫毛和眼球上的視線方向形狀可能無法完全轉移,因為它們的驅動方式與主要臉部網格不同,但這不影響唇形同步,因為唇形同步只需要嘴巴和下巴的形狀。Reallusion CC4/CC5 與 Daz Genesis 8.1/9 轉換指南(點擊展開)
rl_export_arkit_objs.pyoutput_dir = "path/to/your/target/folder" 的地方,指派路徑到您的匯出資料夾。請務必使用正斜線 /。



jawOpen 在匯出後可能看起來效果微弱,或無法令人信服地張開嘴巴。若發生此情況,請在 FBX 匯出選項中啟用 Mouth Open as Morph,這會將下顎的骨骼驅動動作烘焙成專用的 blendshape,可將其指派為 jawOpen 的來源,取代預設的 blendshape。或者,cc_blender_tools 附加元件可將角色透過 Blender 處理,以解決此問題及其他形狀問題;相關工作流程請參閱其文件中的「Blender Round Trip」章節(頁面標題提及 Unity,但此特定章節與引擎無關)。
微調口型同步行為
縮放特定的口型同步曲線
你可以使用 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- 臉頰上提
模型比較與選擇
選擇模型
在決定專案要使用哪個唇形同步模型時,請考量以下因素:
| 考量 | 標準模型 | 擬真模型 | 支援情緒的擬真模型 |
|---|---|---|---|
| 角色相容性 | MetaHumans 與所有自訂角色類型 | MetaHumans(以及 ARKit)角色 | MetaHumans(以及 ARKit)角色 |
| 視覺品質 | 良好的口型同步與高效能表現 | 增強的擬真度,搭配更自然的口部動作 | 增強的擬真度,搭配情緒表情 |
| 效能 | 針對所有平台最佳化,包括行動裝置/VR | 較高的資源需求 | 較高的資源需求 |
| 功能 | 14 個 viseme、笑聲偵測 | 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,不影響其他引擎版本。
效能建議
- 對大多數專案而言,標準模型在品質與效能之間提供了絕佳的平衡
- 當您需要 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 設定可能會在封裝建置中,對 realistic 模型的 ONNX runtime 造成問題。
要修正這個:
- 在您的專案設定 → 打包中,將建置組態設定為 Shipping
- 重新打包您的專案

在某些僅使用 Blueprint 的專案中,即使選取了 Shipping 組態,Unreal Engine 仍可能以 Development 組態建置。如果發生這種情況,請透過新增至少一個 C++ 類別(可以是空的)將專案轉換為 C++ 專案。作法是在 UE 編輯器選單中前往 工具 → 新增 C++ 類別,並建立一個空的類別。這將強制專案以正確的 Shipping 組態建置。您的專案在功能上仍可維持僅使用 Blueprint,C++ 類別只是為了確保正確的建置組態。
唇形同步反應變差: 若您在使用串流音波(Streaming Sound Wave)或可捕捉音波(Capturable Sound Wave)時,發現唇形同步隨著時間推移而反應變差,這可能是由記憶體累積所導致。預設情況下,每次附加新音訊時都會重新分配記憶體。為防止此問題,請定期呼叫 ReleaseMemory 函式以釋放累積的記憶體,例如每隔約 30 秒執行一次。
效能最佳化:
- 根據您的效能需求,為擬真模型調整處理區塊大小
- 針對您的目標硬體使用適當的執行緒數量
- 當不需要完整臉部動畫時,可考慮對支援情緒的模型使用僅嘴部(Mouth Only)輸出類型