跳至主要内容

如何使用外掛程式搭配自訂角色

本指南將逐步說明如何為非 MetaHuman 角色設定 Runtime MetaHuman Lip Sync。此流程需要熟悉動畫概念與骨架綁定。若您需要針對特定角色進行實作協助,可透過 [email protected] 聯繫以取得專業支援。

關於嘴型同步模型的重要說明

自訂角色相容性

本指南涵蓋未使用 MetaHuman 或 ARKit 形態目標命名慣例的自訂角色。

寫實(更高品質)模型適用於其形態目標遵循 MetaHumanARKit 命名標準的角色,可透過形態目標集選擇進行設定。若您的角色已使用(或可匯出/轉換為)ARKit 標準的混合變形名稱,則無需遵循本指南的手動對應流程,即可直接使用寫實模型。

若您的角色使用不同的變形目標組合(例如 Daz Genesis、Reallusion CC3/CC4、Mixamo、ReadyPlayerMe 或簡化的自訂骨架),則標準(較快)模型為支援選項,請依下列步驟操作。

需要擴充套件插件: 若要將標準模型用於自訂角色,您必須按照主要設定指南的先決條件章節所述,安裝標準嘴型同步擴充套件插件

此擴充套件是必要的,適用於本指南所述的所有自訂角色實作。

先決條件

開始之前,請確保您的角色符合以下要求:

  • 具有有效的骨架
  • 包含用於面部表情的形態目標(混合形狀)
  • 理想情況下應具備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 視位就能有效運作,因為它們是密切相關的齒齦後音。

Viseme 映射參考

以下是常見的嘴型系統與插件所需嘴型之間的對應關係:

ARKit 提供了一套全面的混合變形(blendshapes)用於臉部動畫,其中包括多種嘴型。以下是將它們對應到 RuntimeMetaHumanLipSync 視位(visemes)的方法:

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(或 jawOpen + mouthOpen)嘴巴張大發出「啊」的聲音
EjawOpen (mild) + mouthSmile微張嘴並帶有淺淺微笑
IHmouthSmile (mild)嘴唇微微張開
OHmouthFunnel圓潤的開放形狀
OUmouthPucker緊閉的圓唇

建立自訂姿勢資產

請依照以下步驟,為您的角色建立自訂姿勢資產,該資產將與「混合執行時期 MetaHuman 嘴型同步」節點搭配使用:

1. 找到角色的骨架網格

找到包含您要用於口型同步動畫的形態目標(混合形狀)的骨架網格。這可能是全身網格或僅是面部網格,具體取決於您角色的設計。

2. 驗證形態目標與曲線

在繼續之前,請確認您的骨架網格具有適當的形態目標及對應的曲線,以支援嘴型同步動畫。

檢查形態目標: 確認您的骨架網格包含可用於唇形同步動畫的形態目標(混合形狀)。大多數支援臉部動畫的角色都應具備一些音素/嘴型形態目標。

Example of morph targets in a character

重要:確認曲線標籤 對於從 Blender 或其他外部軟體匯出的角色,此步驟尤其關鍵:

  1. 在骨架網格編輯器中開啟曲線分頁
  2. 檢查是否能看到對應於您的形態目標的曲線
  3. 如果曲線分頁是空的,但形態目標存在,請手動新增曲線,並使用與形態目標完全相同的名稱

注意: 此問題常見於 Blender 匯出,其中形態目標成功匯入,但動畫曲線未自動建立。若無匹配的曲線,在烘焙至控制骨架後,動畫將無法正確生成。

替代解決方案: 為避免在從 Blender 匯出時發生此問題,請嘗試在 FBX 匯出設定中啟用自訂屬性動畫,這可能有助於將動畫曲線與形態目標一同包含在內。

3. 建立參考姿勢動畫

  1. 前往 建立資產 -> 建立動畫 -> 參考姿勢
  2. 為動畫序列輸入一個描述性名稱,並將其儲存在適當的位置
  3. 建立的動畫序列會自動開啟,顯示一個循環播放的空動畫

Creating a reference pose asset Naming the reference pose asset

  1. 點擊 Pause 按鈕以停止動畫播放,方便進行編輯。

Pausing animation playback

4. 編輯動畫序列

  1. 點擊 Edit in Sequencer -> Edit with FK Control Rig
  2. Bake to Control Rig 對話框中,直接點擊 Bake to Control Rig 按鈕,無需更改任何設定

Editing with FK Control Rig Baking to Control Rig

  1. 編輯器將切換至「動畫模式」,並開啟「序列器」分頁
  2. 將「檢視範圍結束時間」設為 0016(這會自動將「工作範圍結束」也設為 0016)
  3. 將滑桿的右邊緣拖曳至序列器視窗的最右端

5. 準備動畫曲線

  1. 回到動畫序列資源,並在「曲線」清單中找到形態目標(如果看不見,請關閉並重新開啟動畫序列資源)
  2. 移除任何與您要用於唇形同步的視位或嘴部動作無關的形態目標

6. 規劃您的 viseme 對應

建立一個對應計畫,將角色的視位(visemes)匹配至外掛所需的集合。例如:

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. 前往 建立資產 -> 姿勢資產 -> 目前動畫
  2. 為姿勢資產輸入一個描述性名稱,並將其儲存在適當的位置
  3. 建立的姿勢資產會自動開啟,顯示如 Pose_0Pose_1 等姿勢,每個姿勢對應一個視位
  4. 預覽視位權重,以確保其運作符合預期

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

9. 完成姿勢資產

  1. 將每個姿勢重新命名,以符合先決條件章節中的視位名稱
  2. 刪除任何未使用的姿勢

設定音訊處理與混合

一旦您的姿勢資產準備就緒,您需要設定音訊處理與混合節點:

  1. 找到或建立角色的動畫藍圖
  2. 按照標準外掛設定指南中記錄的相同步驟,設定音訊處理與混合
  3. 在「混合執行時期 MetaHuman 嘴型同步」節點中,選取自訂的姿勢資產,而非預設的 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

口型同步的品質在很大程度上取決於特定角色及其視位(viseme)的設定完善程度。上述範例展示了該插件與不同類型、採用不同視位系統的自訂角色搭配運作的情況。