創建基本動態頭部

*此內容是使用 AI(Beta 測試版)翻譯,可能含有錯誤。若要以英文檢視此頁面,請按一下這裡

您可以在第三方建模軟件中創建或修改現有模型以支持動畫頭部,例如 BlenderMaya。在創建頭部時,您的角色模型必須滿足以下要求:

為了滿足這些要求,您可以在設計和擺姿勢自己的頭部時應用本指南中的步驟。本指南涵蓋了在簡化的參考角色(Cubie)中添加面部骨骼、擺姿勢和在 Blender 中映射 5 種基本 FACS 姿勢的基本過程,然後導出模型。

參考文件

以下是頭部參考文件,包括本指南中的所有示例文件:

參考文件描述
Cubie-Model-Only.blend包含 R15 Cubie 角色模型的 Blender 項目文件,沒有面部數據。
Cubie-Eye-Bones-Skinned.blend包含示例 Cubie 角色模型的 Blender 項目文件,具有綁定的眼睛骨骼,沒有擺姿勢或映射數據。
Cubie-Eye-Poses-Mapped.blend包含 Cubie 角色模型的 Blender 項目文件,保存並映射了 5 種示例姿勢。
Cubie-Complete.fbx具有完全綁定面部和超過 50 種姿勢的 Cubie 角色模型。您可以將此文件導入到 Studio,或在您喜歡的 3D 建模軟件中打開該文件。
Cubie-Texture_ALB.png一個 Cubie 紋理圖像文件。在將 Cubie 模型導入到 Studio 後,您可以將此文件添加為頭部部件的 TextureID
Cubie-Complete.ma作為額外參考提供的 Cubie Maya 項目。

建模要求

許多角色模型已經包含具有明顯面部特徵的頭部,但可能需要進行小的建模調整以兼容頭部。在建模具有頭部的角色時,確保頭部網格符合 虛擬角色規範 以便導入到 Studio,以及以下要求:

  • 面部部件 - 確保您包含明顯的面部特徵,例如眼睛、上牙、下牙和舌頭。
  • 唇部頂點 - 如果您希望角色能夠使用嘴巴,請將唇部頂點分開,以便嘴巴可以打開。
  • 內部組件 - 如果您的角色有內部口腔組件,例如舌頭和牙齒,請在頭部網格內建模一個口袋以容納這些特徵。如果您的角色使用眼窩,請建模一個類似的眼袋以容納這些特徵。
  • 無額外數據 - 確保所有 Head_Geo 的子面部部件不包含歷史或凍結變換。
  • 外部籠 - 確保角色模型具有外部籠以支持面部配件和分層服裝。更多信息,請參見 籠網格要求

您可以使用符合這些建模要求的 綁定的 Cubie 角色 來跟隨本頭部創建過程的其餘部分。此版本不包括任何面部綁定或姿勢數據,因此您可以將其用作本指南中的參考。

綁定

您的角色必須具有內部骨骼結構,以驅動面部幾何形狀的頂點並製作面部姿勢。與 綁定人形模型 不同,Studio 不要求頭部具有特定的骨骼層級。然而,為了使面部綁定正常工作,綁定必須包括 RootFaceJoint 骨骼和 其他面部骨骼

RootFaceJoint

RootFaceJoint 是一個父級在標準 R15 頭部骨骼下的骨骼。這個根骨骼必須作為所有其他面部骨骼的父級。在 Blender 中,您可以通過 擠出 一個子骨骼從頭部骨骼快速添加一個骨骼,然後將骨骼名稱映射為 Head_Geo 網格中的一個屬性。RootFaceJoint 骨骼對象通常在參考模板和示例中命名為 "DynamicHead",但您可以使用任何名稱,只要您在自定義屬性中 映射根骨骼

要添加 RootFaceJoint 骨骼:

  1. 在 Blender 中,打開 Cubie-Model-Only.blend 項目。

  2. 點擊任何骨骼以選擇骨架,然後切換到 編輯模式

  3. 大綱視圖 中,點擊 頭部 骨骼。

  4. 視口 中,按 E 並向上拖動鼠標以從 頭部 骨骼擠出一個額外的子骨骼。

  5. 大綱視圖 中,將此骨骼重命名為 DynamicHead。您稍後將通過名稱引用此骨骼。

面部骨骼

面部骨骼驅動面部幾何形狀的彎曲和變形。您頭部的每個可擺姿勢的面部特徵通常至少需要一根骨骼。複雜的特徵,例如眼睛和嘴巴,可能需要幾根骨骼來使某些姿勢成為可能。

綁定和綁定過程取決於角色模型,並在工具和建模者之間有所不同。計劃好角色所需的所有面部姿勢範圍非常重要,以避免稍後對頭部骨骼進行額外調整。

以下指示描述了在參考模型的 眼睛眼瞼添加面部骨骼綁定 的基本過程。您可以繼續將此技術應用於需要關節的其他面部特徵,例如角色的嘴巴、臉頰和下巴。在添加骨骼並應用影響後,您可以創建 控制,這可以幫助使下一個擺姿勢過程更高效。

添加面部骨骼

您的角色所需的具體頭部骨骼取決於您打算使用的姿勢。以下示例涵蓋了為每隻眼睛添加 1 根骨骼和為眼瞼添加 4 根骨骼的過程,以允許眨眼、眨眼和視線方向。

在創建面部綁定時,盡可能使用少於 50 根面部骨骼,並保持骨骼有序且特定於其相關的面部特徵。一般來說,高數量的頂點和關節可能會影響您遊戲的性能。

眼睛

每隻眼睛各需要一根骨骼,儘管您可能選擇稍後創建一個控制器骨骼來同時控制兩隻眼睛。為了確保您對稱地放置骨骼,您可以在視口的右上角啟用 X 軸鏡像。這會沿 X 軸移動與對應後綴共享相同名稱的骨骼。

要為角色的眼睛添加骨骼:

  1. 物件模式 中,選擇 骨架 並切換到 編輯模式

  2. 點擊 添加,然後選擇 單一骨骼。這樣做兩次。

  3. 將一根骨骼重命名為 LeftEye,將另一根重命名為 RightEye

  4. 啟用 X 軸鏡像

  5. 將左或右骨骼定位在模型的眼睛中心。

  6. 水平調整骨骼並面向前方。設置骨骼水平的快速方法:

    1. 視口 的右上角,展開 工具面板變換 部分。
    2. 選擇骨骼後,將 頭部 Y 位置複製到 尾部 Y 位置。
    3. 尾部 Z 設置為 0.2 厘米。這將尾部 Z 坐標設置為距離頭部 Z 坐標 0.2 厘米的偏移。
  7. 按住 Shift 並點擊兩個 眼睛 骨骼。

  8. 在仍然按住 Shift 的情況下,點擊 面部 骨骼。

  9. 右鍵單擊視口。顯示上下文菜單。

  10. 選擇 父級,然後選擇 設置,再選擇 帶偏移

眼瞼

在添加骨骼時,您可以通過選擇現有的面部骨骼並複製它們來快速創建父級在面部骨骼下的骨骼。這會自動創建父級在面部骨骼下的骨骼。

要為角色的眼瞼添加骨骼:

  1. 編輯模式 中,按住 Shift 並點擊兩個 眼睛骨骼 以選擇它們。

  2. ShiftD 並點擊以在相同位置複製骨骼。這樣做四次以創建 8 根新骨骼。

  3. 啟用 X 軸鏡像 的情況下,將每根骨骼定位在眼睛的角落。

  4. 大綱視圖 中,將所有骨骼重命名以反映其特定位置。使用以下名稱:

    1. LeftUpperOuterEyelid
    2. RightUpperOuterEyelid
    3. LeftLowerOuterEyelid
    4. RightLowerOuterEyelid
    5. LeftUpperInnerEyelid
    6. RightUpperInnerEyelid
    7. LeftLowerInnerEyelid
    8. RightLowerInnerEyelid

綁定面部骨骼

您可以使用幾種方法將 綁定 應用於角色綁定。以下示例使用 Blender 的 權重繪製 模式來繪製單個骨骼可以控制的頂點。對於複雜角色來說,綁定通常是一個耗時的步驟,建議具備綁定和面部擺姿的背景知識。

在為複雜模型應用詳細或共享影響時,建議啟用 自動歸一化 以防止骨骼之間的影響衝突。

眼睛

示例項目中的兩隻眼睛需要在眼睛幾何形狀內的瞳孔上具有完全影響。根據眼睛的設計,您可能需要調整影響以創建逼真的眼睛姿勢。

要為 LeftEye 添加影響:

  1. 物件模式 中,點擊頭部網格,然後按住 Shift 並點擊任何骨骼以選擇骨架。

  2. 切換到 權重繪製模式

  3. 切換到 X 射線視圖模式材質預覽模式 以更好地可視化頂點。

  4. 按住 Shift 並點擊 LeftEye 骨骼以選擇它。當前選定骨骼的名稱顯示在視口的左上角。

  5. 在眼睛內的頂點上繪製影響。對於此示例,確保瞳孔為紅色,或完全受到所選骨骼的影響。

  6. 切換到 物件模式,然後點擊任何骨骼以選擇骨架。

  7. 在選定骨架的情況下切換到 擺姿勢模式

  8. 通過抓住骨骼並移動它來測試眼睛骨骼的影響。下面的網格應該跟隨。

  9. 對右眼重複這些步驟。

眼瞼

眼瞼骨骼需要自己的單獨影響。雖然示例姿勢僅操作上眼瞼,但能夠控制眼瞼的下角對於其他姿勢(例如 LeftCheekRaiserRightCheekRaiser)是重要的。

要為左眼瞼添加影響:

  1. 物件模式 中,點擊頭部網格,然後按住 Shift 並點擊任何骨骼。

  2. 切換到 權重繪製模式

  3. 切換到 X 射線視圖模式材質預覽模式 以更好地可視化頂點。

  4. 在最接近骨骼的頂點上繪製影響。

  5. 完成後,按住 Shift 並點擊另一根骨骼以開始將影響應用於最接近的頂點。對每個眼瞼骨骼執行此步驟。

  6. 切換到 物件模式,選擇角色網格,然後切換到 擺姿勢模式 進行測試。

您可以下載 此項目的版本,其中骨骼已綁定到此點作為參考。

添加控制

由於創建頭部需要連續保存幾個姿勢,雖然不是必需的,但控制可以幫助您快速有效地擺姿勢。您可以通過添加外部控制器骨骼來創建控制,這些骨骼影響內部骨骼,使其更容易訪問和擺姿勢,並重置為中性變換。

您可以以多種不同方式創建控制。以下示例使用 骨骼約束 和參考 Blender 項目中包含的簡單幾何形狀,快速設置易於訪問的控制器骨骼以控制角色的面部骨骼。有關綁定和約束的更多信息,請參見 Blender 的文檔以獲取有關 角色綁定物件約束 的其他詳細信息。

要開始創建面部骨骼控制:

  1. 物件模式 中,選擇 Joints 骨架並按 ShiftD 複製 Joints 骨架對象。
  2. 將新骨架重命名為 Controller
  3. 編輯模式 中,選擇所有非面部骨骼,右鍵單擊並選擇 刪除選定骨骼
  4. 將骨骼重命名以包含 _Con,以將其標記為控制器骨骼。您可以使用以下過程批量重命名它們:
    1. 大綱視圖 中,按住 Shift 並點擊所有控制器骨骼。
    2. 轉到 編輯 > 批量重命名。顯示重命名模態。
    3. 設置為 選定,並使用下拉菜單設置為 骨骼
    4. 類型 設置為 設置名稱
    5. 方法 設置為 後綴
    6. 名稱 中,添加 _Con
    7. 點擊 確定 按鈕。
  5. 切換到 物件模式 並選擇原始 Joints 骨架 對象。
  6. 切換到 擺姿勢模式
  7. 點擊原始關節骨骼,例如 LeftEye,然後導航到 骨骼約束屬性面板
  8. 添加 複製位置複製旋轉,然後將每個原始骨骼的約束設置為目標其對應的控制器骨骼,例如 LeftEye_Con
  9. 複製旋轉 約束中,設置以下屬性:
    1. 中,禁用 XYZ
    2. 反向軸 中,啟用 XYZ
    3. 混合 設置為 偏移(舊版)。
  10. 對每個需要控制器的面部骨骼執行步驟 7-9。

要為更輕鬆的控制骨骼訪問創建自定義骨骼形狀:

  1. 切換到 物件模式 並選擇 Controller 骨架對象。

  2. 切換到 擺姿勢模式

  3. 選擇一個控制器骨骼,例如 LeftEye_Con

  4. 切換到 骨骼屬性 面板並展開 視口顯示 部分。

  5. 選擇項目中包含的自定義形狀之一。在參考項目中,形狀對象的名稱與面部骨骼相似。

  6. X 旋轉設置為 -90。根據需要設置任何額外的縮放。

  7. 對所有控制器骨骼執行步驟 3-6。此時,您可以隱藏原始面部骨骼。

  8. 可選
    設置 骨骼組 以為您的控制骨骼分配顏色:

    1. 導航到 物件數據屬性 面板。

    2. 創建一個新的骨骼組。

    3. 顏色集 更改為您選擇的顏色主題。

    4. 點擊 分配 以將當前選定的控制器分配該顏色。您可以批量執行此步驟。

  9. 擺姿勢模式 中測試您的控制器。

擺姿勢

擺姿勢 是將頭部網格的骨骼操縱到每個動畫幀的特定位置的過程。在模型的頭部綁定後,您可以開始將姿勢保存到時間軸的過程。這些數據使 Studio 能夠訪問每個面部動作並動畫或混合面部姿勢以創建動態表情。

在將角色的頭部網格的骨骼擺到新位置時,請遵循 面部動作編碼系統 (FACS) 作為面部表情姿勢的參考。FACS 是一個全面的、基於解剖學的系統,用於描述所有可視可辨的面部運動,並允許所有面部動畫在角色之間共享。這意味著,一旦您創建了面部動畫,您可以將其重用於任何具有 可動畫頭部 的角色,並具有 FaceControls 實例。

您建模軟件的動畫時間軸中的每一幀可以包含一個獨特的 FACS 姿勢,因此當您想要創建多個 FACS 姿勢時,必須將每個 FACS 姿勢保存到不同的幀。您還必須包括一幀,讓您的角色擁有中性面部,面部控制器和骨骼設置為其默認值。這確保 Studio 能夠計算角色中性表情與每個 FACS 姿勢之間的骨骼位置差異。因此,將幀 0 設置為角色的中性表情,並從幀 1 開始保存 FACS 姿勢。

以下圖像是 Blender 的動畫時間軸的示例,包含 5 幀。幀 0 具有角色的中性表情,幀 1-4 具有 FACS 姿勢數據。

在 Roblox 中,您可以使用 50 種基本姿勢 來表達角色的廣泛面部情感。在決定需要哪些姿勢時,請記住 FACS 姿勢名稱始終基於角色的方向,而不是相機。例如,LeftEyeClosed 關閉角色的左眼,該眼睛位於相機視圖的右側。

您可能不需要角色的所有 50 種基本姿勢。例如,一個簡單的機器人如果能張嘴和眨眼,只需擁有 JawDropLeftEyeClosedRightEyeClosed。因此,您希望角色越具表現力,您需要在動畫時間軸中包含的 FACS 姿勢就越多。建議將您打算與頭部一起使用的基本姿勢按字母順序保存,然後將任何幀用於 組合姿勢

以下步驟概述了使用我們參考中創建的面部骨骼擺出 5 種姿勢的過程,但您可以將這些步驟應用於任何其他姿勢以獲得更具表現力的頭部。要在 Blender 中擺姿勢您的面部骨骼:

  1. 確保動畫時間軸的播放頭設置在正確的幀。

    1. 如果您設置角色的 中性姿勢,請將其設置為 幀 0
    2. 如果您擺姿勢 EyesLookLeft,請將其設置為 幀 1
    3. 如果您擺姿勢 EyesLookRight,請將其設置為 幀 2
    4. 如果您擺姿勢 LeftEyeClosed,請將其設置為 幀 3
    5. 如果您擺姿勢 RightEyeClosed,請將其設置為 幀 4
  2. 擺姿勢模式 中,將姿勢設置為您希望姿勢真實使用的最大位置:

    1. 如果您設置角色的 中性 姿勢,請將面部控制器和骨骼設置為其默認值,
    2. 如果您擺姿勢 EyesLookLeft,請選擇兩個眼睛控制器骨骼並將眼睛拖到角色的左側。
    3. 如果您擺姿勢 EyesLookRight,請選擇兩個眼睛控制器骨骼並將眼睛拖到角色的右側。
    4. 如果您擺姿勢 LeftEyeClosed,請選擇兩個眼睛控制器骨骼並將左眼瞼向下拖動以與下眼瞼相接觸。
    5. 如果您擺姿勢 RightEyeClosed,請選擇兩個眼睛控制器骨骼並將右眼瞼向下拖動以與下眼瞼相接觸。
  3. 視口 中,按 A 選擇所有骨骼。

  4. 右鍵單擊並選擇 插入關鍵幀 > 位置和旋轉。這確保每一幀都包含所有骨骼的位置信息和旋轉信息。

當所有姿勢都保存在您的時間軸中時,將動畫時間軸的開始和結束設置為表示保存姿勢的幀數。始終將 開始 設置為 0,在這個特定示例中,如果您僅映射 4 個非中性示例姿勢,則可以將 結束 設置為 4

組合姿勢

您可以在單個動畫幀中組合 2-3 種基本 FACS 姿勢以顯示複雜的面部表情。然而,當您組合控制 相同 面部區域的 FACS 姿勢時,面部特徵可能會相互碰撞或變形。

例如,LeftEyeClosedLeftCheekRaiser 都控制角色左眼周圍的運動:LeftEyeClosed 關閉眼睛,而 LeftCheekRaiser 提升臉頰並推動下眼瞼向上,造成類似眯眼的效果。當您將這兩個姿勢與一個或多個以 100% 的值組合時,下眼瞼會與上眼瞼碰撞:

兩個 FACS 姿勢同時輕鬆達到其默認值的 100%。
LeftEyeClosed 輕鬆達到其默認值的 100%,而 LeftCheekRaiser 從 100% 開始。
LeftCheekRaiser 輕鬆達到其默認值的 100%,而 LeftEyeClosed 從 100% 開始。

組合姿勢,或 修正,是 2-3 種 FACS 姿勢的組合,這些姿勢在單個動畫幀中控制相同的面部特徵,並且具有 與其默認值的 100% 的修正差異。通過定義和映射組合姿勢到您的頭部,您可以修正您希望兩個或多個 FACS 姿勢如何組合。例如,如果您為每個先前的用例添加修正,則下眼瞼和上眼瞼可以相互接觸而不會碰撞:

使用修正姿勢,兩個 FACS 姿勢同時輕鬆達到其默認值的 100%。
LeftEyeClosed 輕鬆達到其默認值的 100%,而 LeftCheekRaiser 從 100% 開始。
LeftCheekRaiser 輕鬆達到其默認值的 100%,而 LeftEyeClosed 從 100% 開始。

在導入時,Studio 計算並存儲組合姿勢的修正差異在頭部的 FaceControls 實例中,並且 FaceControls 實例在 動畫編輯器 中組合時修正基本姿勢值。

映射

在您完成擺姿勢每個角色所需的 FACS 姿勢後,您必須映射或鏈接 每個您擺的動畫幀 到其相應的 FACS 基本或組合姿勢名稱。映射將骨骼位置和變換存儲在頭部的 MeshPart 中,當您開始在 動畫編輯器 中動畫您的頭部時,FaceControls 實例使用這些存儲的數據來轉換角色的面部特徵到適用的 FACS 姿勢。

除了將每個姿勢映射到其正確的姿勢名稱外,您還需要映射 RootFaceJoint,以便 Studio 能夠正確定位該關節並在導入時隱藏所有子關節及其骨骼。

要映射您保存的姿勢和 RootFaceJoint:

  1. 切換到 物件模式

  2. 選擇 Head_Geo 網格

  3. 屬性編輯器物件屬性 標籤中,導航到 自定義屬性 部分,然後單擊 新建 按鈕。新的自定義屬性顯示在 新建 按鈕下方。

  4. 在新自定義屬性右側,單擊 齒輪圖標。顯示 編輯屬性 彈出窗口。

  5. 單擊 類型 下拉菜單,然後選擇 字符串

  6. 屬性名稱 字段:

    1. 如果您正在映射一個姿勢,請輸入您正在映射的 幀號,例如 Frame0
    2. 如果您正在映射 RootFaceJoint,請輸入 RootFaceJoint
  7. 默認值描述 字段留空。

  8. 單擊 確定 按鈕。新的自定義屬性將更新為您的新屬性名稱。

  9. 在自定義屬性名稱右側的字段中:

    1. 如果您正在映射基本姿勢,請準確輸入相應的 FACS 基本姿勢 或組合姿勢名稱。
    2. 如果您正在映射組合姿勢,請輸入您正在組合的每個基本姿勢,並用下劃線分隔,例如 Funneler_JawDrop_Pucker
    3. 如果您正在映射 RootFaceJoint,請輸入面部根骨骼的名稱,通常為 DynamicHead
  10. Enter

當您重複此過程時,您創建的每個額外自定義屬性都會顯示在 屬性編輯器物件屬性 標籤中的 自定義屬性 部分。

您可以下載 此項目的版本,其中姿勢已保存並映射到此點作為參考。如果將帶有保存動畫數據的頭部 .fbx 導入到 Blender,請確保在 .FBX 導入窗口中將 動畫偏移 設置為 0 以包括時間軸的幀 0。

導出

在您完成角色的頭部擺姿勢和映射後,您可以將角色模型導出為 .fbx 以導入到 Studio,這樣您就可以使用 FaceControls 實例訪問 4 種眼睛姿勢。您還可以參考完全配置的 Cubie 頭部 .fbx 以訪問所有 50 多種基本姿勢。

可動畫頭部的導出設置與 標準第三方建模導出設置 略有不同。要將基本頭部模型導出為 .fbx

  1. 在頂部欄中,單擊 文件。彈出菜單顯示。
  2. 選擇 導出,然後選擇 FBX (.fbx)。顯示 Blender 文件視圖 窗口。
  3. 展開 包含 並啟用 限制到 > 活動集合。如果您在 Blender 項目中沒有其他集合,此步驟是可選的。
  4. 包含 部分,啟用 自定義屬性
  5. 展開 骨架 部分並取消選中 添加葉骨
  6. 啟用 烘焙動畫
  7. 展開 烘焙動畫 並取消選中 NLA 條帶所有動作強制開始/結束關鍵幀
  8. 單擊 導出 FBX 按鈕。將 FBX 保存到您選擇的目錄。

此時,您現在可以將 .fbx 導入到 Studio 作為具有支持的可動畫頭部的角色。有關模型導入和使用說明,請參見 在 Studio 中測試頭部

©2026 Roblox Corporation、Roblox、Roblox 標誌及 Powering Imagination 是我們在美國及其他國家地區的部分註冊與未註冊商標。