眼部動畫輔助工具
除了口型同步之外,Runtime MetaHuman Lip Sync 外掛程式還包含兩個用於動畫 MetaHuman 眼睛的選用輔助工具:
- 自動眨眼:一個輔助工具,可在 MetaHuman 上產生自然、隨機的眼睛眨眼
- 眼睛注視:一個 Animation Blueprint 節點,可讓 MetaHuman 的眼睛注視世界空間中的某個位置
這些功能完全獨立於口型同步,可單獨使用、搭配使用,或與口型同步節點結合使用。它們旨在作為輕量級、即插即用的輔助工具,用於添加逼真的眼部行為,而無需手動製作。
功能預覽
影片逐步解說
兩個輔助工具的完整逐步解說,包括舊版骨架的因應做法。
如果您的臉部動畫流程已經包含眨眼和動態視線,您可以跳過此頁面。這些輔助工具是為了在您希望獲得逼真眼部行為、但不想自行製作的場景而存在,例如當您的動畫序列不包含眨眼時,或當您需要眼睛動態跟隨移動目標時(這是靜態動畫序列無法做到的)。它們也可以疊加在現有的臉部動畫之上,以補足缺少的部分,例如在僅動畫化嘴巴的序列上加入眨眼。
自動眨眼
自動眨眼輔助工具透過驅動 MetaHuman Face Control Rig 的 CTRL_L_eye_blink 和 CTRL_R_eye_blink 曲線,產生隨機且自然的眨眼效果。
運作方式
每一幀,您從 Face Animation Blueprint 的 Event Graph 呼叫 Update MetaHuman Auto Blink,並傳入該幀的 delta time。此函式會:
- 追蹤每個角色的狀態(下次眨眼時間、目前張開/閉合的階段等),並以呼叫的
AnimInstance作為鍵值 - 回傳兩個 0..1 範圍內的浮點數值,一個代表左眼,一個代表右眼,表示目前每隻眼睛的閉合程度
- 接著,您將這些數值儲存在 Blueprint 變數中,並將它們輸入到 Anim Graph 中的 Control Rig 節點
設定
**兩個步驟:**先將眨眼呼叫加入你的事件圖表(Event Graph),然後在動畫圖表(Anim Graph)中將數值饋入控制綁定(Control Rig)節點。
1. 事件圖表:每一幀驅動眨眼數值
在您的臉部動畫藍圖(例如 Face_AnimBP 或您複製/拷貝的版本,請參閱設定指南)中,開啟事件圖表,並在事件藍圖更新動畫中加入以下內容:
- 呼叫
Update MetaHuman Auto Blink - 將 Delta Time X(來自事件)連接到 Delta Seconds
- (可選)設定 Config 結構。預設值看起來已經很自然
- 將 Left Blink Value 和 Right Blink Value 提升為 Blueprint 變數(例如
LeftBlinkValue、RightBlinkValue)

2. 動畫圖表:將數值輸入至臉部控制骨架
在同一個動畫藍圖的動畫圖表中:
- 放置一個 Control Rig 節點來驅動眨眼曲線。它的確切位置取決於你是否要將 Auto Blink 與其他臉部動畫(如口型同步、自訂序列等)結合使用:
- 無其他臉部動畫: 將 Control Rig 節點直接放在主鏈中,位於
Output Pose之前。 - 結合唇形同步及/或其他臉部動畫: 將此 Control Rig 節點連接到
Layered blend per bone節點,而非直接放在鏈中,請參閱下方提示。
- 無其他臉部動畫: 將 Control Rig 節點直接放在主鏈中,位於
- 在節點的詳細資訊面板中,將控制綁定類別(在UE 5.8+中為控制綁定資產參考)設定為您的MetaHuman臉部控制綁定。路徑通常為:
/All/Game/MetaHumans/Common/Face/Face_ControlBoard_CtrlRig- 您的專案路徑可能會因 MetaHuman 的匯入方式而有所不同。
- 在Details面板中,展開Input區段,並為以下項目啟用Use Pin:
CTRL_L_eye_blinkCTRL_R_eye_blink
- 將你的
LeftBlinkValue變數連接到CTRL_L_eye_blink - 將你的
RightBlinkValue變數連接到CTRL_R_eye_blink

若您未與其他臉部動畫結合使用,請將 Control Rig 節點放置在唇形同步混合節點(及其他任何臉部動畫節點)之後的鏈條中,以免眨眼數值被覆寫。若您確實要與唇形同步或其他臉部動畫結合使用,請遵循與既有動畫結合指南,改將此 Control Rig 節點連接到 Layered blend per bone 節點的 Base Pose 輸入端,分層混合節點能同時保留兩者,而非讓其中一方單純覆寫另一方。
設定
Update MetaHuman Auto Blink 節點接受一個可選的 Config 結構體。預設值對大多數角色來說看起來已經很自然,如果您想調整行為,請展開以下內容。
設定屬性
時間安排
| 屬性 | 預設值 | 說明 |
|---|---|---|
| 眨眼最小間隔時間 | 2.0 秒 | 眼睛完全睜開時,兩次眨眼之間的最小間隔時間。 |
| 眨眼最大間隔時間 | 4.0 秒 | 兩次眨眼之間的最大間隔時間。實際間隔會在最小與最大值之間隨機決定。 |
| 閉眼最短持續時間 | 0.04 秒 | 眼睛保持完全閉合的最短時間。 |
| 閉眼最長持續時間 | 0.08 秒 | 眼睛保持完全閉合的最長時間。 |
插值
| 屬性 | 預設值 | 說明 |
|---|---|---|
| 閉眼插值速度 | 35.0 | 閉眼時的速度。人類閉眼的速度比睜眼快,因此此值刻意高於睜眼速度。 |
| 睜眼插值速度 | 18.0 | 睜眼時的速度。 |
| 閉合閾值 | 0.97 | 眨眼被視為「完全閉合」並開始進入保持階段的值。 |
| 睜開閾值 | 0.02 | 眨眼被視為「完全睜開」並排定下一次眨眼的值。 |
雜項
| 屬性 | 預設值 | 說明 |
|---|---|---|
| 獨立眼睛 | false | 當 true 時,左右眼會以各自的時間獨立眨眼。當 false(預設值)時,雙眼會完全同步眨眼。 |
bEnabled(函式引腳) | true | 當 false 時,眼睛會緩緩張開並暫停眨眼。適用於過場動畫、睡眠、死亡等情境。 |
執行階段控制
您也可以呼叫 Reset Auto Blink State 來明確清除指定 AnimInstance 的內部狀態(例如在角色重生或切換過場動畫狀態時)。
眼睛瞄準
「眼睛注視」輔助工具是一個動畫藍圖節點(Runtime MetaHuman Eyes Aim),可讓角色的眼睛追蹤世界空間中的某個位置,例如玩家攝影機、其他角色,或任何移動中的目標。它支援偏航/俯仰角限制、平滑處理、當目標經過頭部後方時的抗翻轉保護,以及可選的微跳視(micro-saccades)以增加真實感。
選擇模式
此節點支援兩種模式,可透過節點「詳細資訊」面板中的模式下拉選單進行選擇:
| Mode | 它驅動的內容 | 放置位置 |
|---|---|---|
| 曲線(預設) | 臉部控制綁定(Control Rig)的眼部注視曲線(CTRL_expressions_eyeLook*) | 在臉部動畫藍圖(例如 Face_AnimBP)中,位於控制綁定(Control Rig)節點之前 |
| 骨骼 | 直接驅動 FACIAL_L_Eye / FACIAL_R_Eye 骨骼,繞過控制綁定(Control Rig) | 在臉部後處理動畫藍圖(例如 Face_PostProcess_AnimBP)中,位於 AnimNode_RigLogic 節點之後 |
曲線模式是建議的預設選項。它能與其他基於曲線的臉部系統(如口型同步、表情、ARKit 混合變形等)乾淨地組合,因為數值是透過正常的 Control Rig 評估來結合,而非爭奪骨骼變換。
在某些 MetaHuman 變體(尤其是較舊的骨架,包括一些透過 Quixel Bridge 下載的)上,視線曲線實際上並不會驅動眼睛。可見的症狀是,當 Curves 模式節點啟用時,眼睛會向下看,瞳孔幾乎被隱藏,無論目標位置為何。
如果您看到這個,請切換到 Bones 模式。Bones 模式會直接旋轉眼球骨骼,因此無論 Control Rig 如何接線,它都能適用於所有 MetaHuman 變體。請參閱下方 設定 中的 Bones 標籤。
設定
- 曲線模式(預設)
- 骨骼模式(備用方案)
預設設定。該節點位於標準的臉部動畫藍圖中,並驅動臉部控制綁定的眼神注視曲線。
兩個步驟: 將節點加入你的動畫圖表(Anim Graph),然後從事件圖表(Event Graph)提供目標位置給它。
1. 動畫圖表:新增節點
在您的臉部動畫藍圖的動畫圖表中:
- 新增一個
Runtime MetaHuman Eyes Aim節點 - 在 Details 面板中,將 Mode 保持設定為 Curves
- 將它放置在所有其他可能寫入眼睛注視曲線的臉部邏輯(唇形同步、自訂動畫等)之後,此原則與 Auto Blink Control Rig 節點相同
- 將現有的姿勢連接到 Source Pose
- 將輸出連接到鏈中的下一個節點(或
Output Pose) - 建立一個
VectorBlueprint 變數(例如TargetWorldLocation),並將其連接到節點的 Target World Location 接腳。您將在下一步中從 Event Graph 更新此變數。

2. 事件圖表:輸入目標位置
目標世界位置(Target World Location)接腳預期接收世界空間的 FVector。常見的情況是讓 MetaHuman 注視玩家攝影機。在事件藍圖更新動畫(Event Blueprint Update Animation)中:
- 取得玩家攝影機管理員(玩家索引 0)
- 檢查是否有效
- 若有效,呼叫取得攝影機位置
- 將其儲存在
TargetWorldLocation藍圖變數中

若要改為追蹤任意Actor(NPC、物品、興趣點),請在每一幀取得該Actor的位置,並將其儲存在同一個變數中。若要設定固定的凝視點,請在節點的Details面板中,將Target World Location設定一次或設為常數。
如果曲線模式的方法不適用於您的 MetaHuman 變體(請參閱上方警告),請使用此設定。在骨骼模式中,節點會直接旋轉眼球骨骼,且必須在 Control Rig 完成評估之後執行,這表示它應屬於 Face Post Process Animation Blueprint,而非一般的 Face AnimBP。
三個步驟: 找到 Post Process Anim BP,在 RigLogic 之後加入節點,然後從該藍圖的 Event Graph 提供目標位置給它。
1. 找到「臉部後處理動畫 BP」
- 開啟您的 MetaHuman 的臉部骨骼網格資產(例如 MetaHuman 資料夾下的
Face) - 在資產的詳細資訊面板中,找到後處理動畫藍圖欄位
- 開啟該資產,其名稱通常是類似
Face_PostProcess_AnimBP的內容
2. 動畫圖表:在 RigLogic 之後加入節點
在臉部後處理動畫 BP 的動畫圖表中:
- 找到現有的
AnimNode_RigLogic節點(它會將臉部 Control Rig 曲線轉換為骨骼變換) - 在
AnimNode_RigLogic之後、Output Pose之前新增一個Runtime MetaHuman Eyes Aim節點 - 在節點的 Details 面板中,將 Mode 設定為 Bones
- 將
AnimNode_RigLogic連接到 Eyes Aim 節點的 Source Pose - 將 Eyes Aim 節點的輸出連接到
Output Pose - 在此 Post Process Anim BP 中建立一個
VectorBlueprint 變數(例如TargetWorldLocation),並將其連接到節點的 Target World Location 連接埠

預設的骨骼參考(FACIAL_L_Eye 和 FACIAL_R_Eye)符合標準的 MetaHuman 臉部骨架。如果您的角色使用自訂骨架且具有不同的眼部骨骼名稱,請在節點的 Details 面板中,於 Bones 類別下覆寫這些名稱。
3. 事件圖表:輸入目標位置
由於該節點位於 Post Process Anim BP 中,目標位置邏輯也必須存在於此藍圖的 Event Graph 中,而非 Face_AnimBP。其設定方式與 Curves 模式相同(取得攝影機位置、Actor 的位置,或使用常數),只是改在 Face_PostProcess_AnimBP 內執行。

任何無關的邏輯(如口型同步、自動眨眼等)都可以保留在一般的 Face AnimBP 中。只有 Eyes Aim 的目標位置計算需要移到這裡。 臉部控制綁定會根據其曲線,在每一幀強制驅動眼部骨骼。如果「眼睛注視」節點在一般的臉部動畫藍圖(在控制綁定之前)中執行,控制綁定之後會覆寫骨骼旋轉。後處理動畫藍圖在控制綁定產生最終骨骼變換之後執行,因此它是套用需要「勝出」的最終骨骼旋轉的正確位置。骨骼模式為何需要後處理動畫藍圖(Post Process Anim BP)?
設定
所有設定都顯示在 Runtime MetaHuman Eyes Aim 節點的詳細資訊面板中。
瞄準與夾取
平滑處理與跳視
骨骼(僅限骨骼模式)
| 屬性 | 預設值 | 說明 |
|---|---|---|
| 左眼骨骼 | FACIAL_L_Eye | 左眼骨骼名稱。符合標準 MetaHuman 臉部骨架。 |
| 右眼骨骼 | FACIAL_R_Eye | 右眼骨骼名稱。符合標準 MetaHuman 臉部骨架。 |
校準(僅限曲線模式)
這些數值定義了頭部空間角度如何映射到 MetaHuman 臉部 CR 的眼部注視曲線值。預設值已針對標準 MetaHuman 臉部 CR 進行調校,通常無需更改。
| 屬性 | 預設值 | 說明 |
|---|---|---|
| 偏航角每單位曲線度數 | 30° | 對應於偏航注視曲線值 1.0 的角度。 |
| 俯仰角每單位曲線度數 | 25° | 對應於俯仰注視曲線值 1.0 的角度。 |
結合口型同步與其他動畫
這兩個輔助工具皆設計為可與外掛的嘴型同步節點,以及您既有的任何自訂臉部動畫共存。
- Eyes Aim 應放置在唇形同步及同一鏈條中任何自訂臉部動畫之後,這樣其眼部注視數值才不會在下游被覆寫。請參閱上方選擇模式與設定。
- Auto Blink 使用
Layered blend per bone節點而非簡單的線性放置方式,關於如何將 Control Rig 節點接入其 Base Pose 輸入,請參閱上方放置位置很重要的提示。
查看詳細執行流程圖(曲線模式 vs. 骨骼模式)
根據您的 MetaHuman 綁定使用的是建議的 Curves 模式 還是備用的 Bones 模式,執行邏輯的放置位置會有所不同。展開下方圖表,即可查看兩種管線的完整執行順序:
自動眨眼與口型同步在兩種模式下仍位於一般的 Face AnimBP 中。
如需了解與身體動畫分層的詳細資訊,請參閱與現有動畫結合。
備註與限制
這些輔助工具是 MetaHuman 專用的。它們依賴於標準的 MetaHuman 臉部 Control Rig 曲線名稱(CTRL_L_eye_blink、CTRL_R_eye_blink、CTRL_expressions_eyeLook*)以及標準的眼部骨骼(FACIAL_L_Eye、FACIAL_R_Eye)。它們並非設計用於自訂的非 MetaHuman 角色。
需要協助嗎?
如需客製化開發需求,請聯絡 [email protected]。