為擴增臉孔建立自訂紋理和 3D 模型

如要實作擴增臉孔功能,您需要自訂紋理和模型,以便在已識別的臉孔網格上重疊。這些資產是由藝人預先使用 3D 模型和動畫軟體建立,並且匯出為 FBX 檔案。

標準檔案

這些 SDK 隨附 canonical_face_mesh.fbx 檔案和 canonical_face_mesh.psd 檔案,可協助藝人建立資產,並正確重疊在 ARCore 偵測到的臉孔上。您可以在 assets/canonical_face_mesh.fbx 資料夾中找到這些檔案。

使用 FBX 檔案建立 3D 模型

FBX 檔案包含臉部網格拓撲、UV 紋理座標和 rig,用於定義用於建立和附加資產的受支援臉部區域。為確保這些檔案與 ARCore 相容,請使用支援的設定儲存 FBX 檔案。

這個檔案內含的參照 facemesh 不應匯出為最終 FBX 的一部分。ARCore 會在執行階段產生並更新獨立的臉部網格。

使用 PSD 檔案建立 2D 紋理

.psd 臉孔網格參照紋理可用來查看藝人在執行階段建立與臉部特徵對齊的紋理。其中包含四個圖層:

  • 遮罩:顯示眼睛、鼻子和嘴巴在紋理中的位置。
  • 線條:說明執行階段中使用者的臉部特徵如何對齊紋理。
  • UV:代表 468 點表面紋理網格的三角測量。
  • 背景:這個中性灰色背景圖層能清楚呈現其他三個元件。

如果修改 PSD 檔案,您所做的變更應該會在匯出後立即看見。

自訂標準臉孔網格

如果是使用 SDK 內附的 assets/canonical_face_mesh.fbx 建立模型和紋理,則匯出 FBX 檔案時也需要進行這些設定:

  • 確認所有自訂網格都在相關骨骼或區域中繪製。

  • 請使用下列階層:

    asset
    |__root
    |   |__NOSE_TIP
    |   |__FOREHEAD_RIGHT
    |   |__FOREHEAD_LEFT
    |__facemesh           <-- for reference
    |__                   <-- place additional custom 3D meshes here
  • 請勿匯出隨附的 facemesh 模型。這個網格僅供參考。ARCore 會在執行階段建立獨立的臉部網格。建立自訂錶面網格紋理時,請使用 facemesh 中的 UV。

  • 將自訂網格放置為 asset 節點的子項。

  • 可使用命名空間。

  • 素材資源包含四個骨頭,包括 rootNOSE_TIPFOREHEAD_RIGHTFOREHEAD_LEFT 區域。請勿變更這些骨頭的名稱。