为增强面创建自定义纹理和 3D 模型

如需实现增强现实人脸,您需要自定义纹理和模型,以便叠加在识别出的脸部网格上。这些资产由音乐人创作 并导出为 FBX 格式 文件。

规范文件

这些 SDK 附带 canonical_face_mesh.fbx 文件和 canonical_face_mesh.psd 文件,可帮助艺术家创建可正确叠加到 ARCore 检测到的面部上的素材资源。您可以在以下位置找到这些文件: assets/canonical_face_mesh.fbx 文件夹。

使用 FBX 文件创建 3D 模型

FBX 文件包含面网格拓扑、UV 纹理坐标以及 该绑定定义了支持的面部区域,这些区域用于创建和 附加资源。为确保它们与 ARCore 兼容,FBX 文件应 使用支持的设置进行保存

此文件包含一个引用 facemesh,不应作为最终 FBX 的一部分导出。ARCore 将在 运行时。

使用 PSD 文件创建 2D 纹理

.psd 面网格参考纹理用于了解 音乐人在运行时创建与用户面部特征的对齐。它包含四个层:

  • Mask:显示纹理中眼睛、鼻孔和嘴巴的位置。
  • 线条:显示用户的面部特征与面部特征之间的排列关系的准则 呈现纹理。
  • 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_TIP 组成, FOREHEAD_RIGHTFOREHEAD_LEFT 区域。请勿更改这些骨骼的名称。