面部追踪

捕捉应用中的摄像头・iPhone 面部追踪

此页面为机器翻译,可能包含不准确的内容。

Motion Capture for VRC Avatar Viewer (以下简称「捕捉应用」) 还可以把眨眼、嘴部动作等表情同步到头像上。使用时需要分别选择表情数据的获取方式,以及发送给头像的发送格式。

2 种数据源 (获取方式)

  • 摄像头 (默认) 根据连接到 PC 的摄像头画面推测表情。不需要额外设备,人人都能用,但存在无法获取脸颊和舌头动作等限制。
  • iPhone (iFacialMocap) 使用支持 Face ID 的 iPhone 和 iFacialMocap (付费 iOS 应用),可以获取基于 ARKit 的 52 种高精度表情数据。表现力远超摄像头。

获取到的表情数据以哪种格式发送给头像,在「表情发送格式」中选择。请先确认头像支持的格式,再选择与之相符的格式 (详见 Step 3 及之后的内容)。

提示
  • 连接 iFacialMocap 时,iFacialMocap 的表情数据优先于摄像头 (身体动作仍来自摄像头)
  • 无论选择哪种发送格式,只要启用了 iFacialMocap,就会使用它的表情数据
  • 与 VRChat 联动的详细说明请参阅 将面部追踪发送到 VRChat 指南
1

用摄像头捕捉表情

这是默认方式。按照 让头像动起来指南 中的步骤启动摄像头后,表情也会自动从摄像头画面推测出来。无需额外设置。

用摄像头捕捉表情
用摄像头捕捉表情

1-1. 可以获取的表情

  • 眨眼 (左右眼分别识别)
  • 元音 (a・i・u・e・o)
  • 视线 (上下左右)
  • 眉毛上下、嘴巴开合、嘴角动作等

1-2. 无法获取 / 不擅长的内容

  • 鼓腮、舌头动作
  • 在昏暗环境中精度会大幅下降。需要足以看清面部的亮度
  • 侧脸、低头等看不到面部正面的角度
如何选择发送格式
  • 只使用摄像头时,推荐选择 VRM 标准。大多数头像都能自然地动起来
  • Perfect Sync 和 VRCFT 也可以使用。但如上所述,有些动作无法获取。
2

用 iPhone 捕捉高精度表情 (iFacialMocap)

使用支持 Face ID 的 iPhone (iPhone X 及以后机型),表情精度可以比摄像头大幅提升。需要一款名为 iFacialMocap 的 iOS 应用。

iFacialMocap
iFacialMocap

2-1. 所需条件

  • 支持 Face ID 的 iPhone 或 iPad Pro
  • 在 App Store 购买的 iFacialMocap (iOS 付费应用)
  • iPhone 和 PC 连接在同一个 Wi-Fi (局域网) 下

2-2. iPhone 端设置

  1. 在 iPhone 上启动 iFacialMocap
  2. 屏幕上会提示与 PC 端软件连接,记下显示的 IP 地址 (例如: 192.168.1.10)
不显示 IP 地址时
  • 打开 iFacialMocap 的设置,检查「目标设置」。如果「目标 IP 地址」中已填入数值,就不会显示 IP 地址。点击其下方的「重置目标设置」并重启应用后即可显示。

2-3. 捕捉应用端设置

  1. 在捕捉应用的「iFacialMocap 的 IP 地址」栏中输入记下的 iPhone IP
  2. 打开「使用 iFacialMocap」
  3. 旁边的状态变为 「接收中」 即表示连接成功

2-4. 状态显示的含义

状态含义
已停止「使用 iFacialMocap」开关为 OFF
未输入 IPiPhone 的 IP 为空。输入后会自动尝试连接
等待连接已发送握手,但 iPhone 没有响应 (iFacialMocap 未启动 / IP 不正确 / 不在同一网络等)
接收中正在正常接收表情数据

2-5. 可以获取的表情

可以获取基于 ARKit 的 52 种 BlendShape + 头部旋转 + 左右视线。其中也包括摄像头无法获取的鼓腮和舌头动作 (头像需要具备相应的 BlendShape)。

关于与摄像头同时使用
  • 启用 iFacialMocap 期间,身体、手臂和手指的动作仍会继续从摄像头获取
  • 这是「表情用 iFacialMocap,身体用摄像头」的混合配置
3

确认头像支持的面部追踪格式

在选择表情发送格式之前,先在 Viewer 应用中确认当前显示的头像支持哪些面部追踪格式。如果选择了不支持的格式,即使捕捉应用发送了表情数据,头像也无法正确动起来。

支持的面部追踪格式
支持的面部追踪格式
  1. 在 Viewer 应用中显示目标头像
  2. 打开直播模式
  3. 点击直播面板中的 「面部追踪」 按钮
  4. 查看窗口上方「类型」按钮下方的 「可用:」 一栏
如何查看支持的格式
  • 会像 「可用: VRM/VRChat 默认, Perfect Sync」 这样,显示当前加载的头像所支持的格式
  • 捕捉应用的「表情发送格式」和 Viewer 的「类型」,请从这些支持的格式中选择同一种
  • 如果选择了不支持的格式,表情可能不会动,或者部分 BlendShape 无法生效
4-1

选择表情发送格式 (BlendShape 规格)

根据 Step 3 中确认的头像支持格式,从捕捉应用的「表情发送格式」下拉菜单中选择。

选择表情发送格式
选择表情发送格式

VRM 标准

通过 VMC 发送 VRM 本身具备的眨眼、元音、视线等基本表情。所有头像都能使用,但表现比较简单。VRChat 头像的眼睛和嘴巴也能动。这是只使用摄像头时的默认推荐。

Perfect Sync

通过 VMC 发送 ARKit 的 52 种 BlendShape。在支持 Perfect Sync 的头像上,连嘴角、眉毛、眼睑的细微动作都能体现出来。与 iFacialMocap 搭配使用效果更好。

VRCFT

VRCFaceTracking 5.x 的 Unified Expressions 规格。其特点是能够再现与 VRChat 中头像相同的表情。

提示
  • VRCFT 通常需要为头像添加专用插件。Perfect Sync 则无论是 VRChat 头像还是 VRM 头像,只要支持就可以使用。
4-2

开启表情发送

在捕捉应用的发送部位中打开「表情」。如果已经打开,保持不变即可。

打开发送部位中的「表情」
打开发送部位中的「表情」
5

在 Viewer 应用中选择面部追踪类型

在 Viewer 应用中选择面部追踪类型
在 Viewer 应用中选择面部追踪类型

从 Step 3 中确认的支持格式里,在 Viewer 应用中也选择与捕捉应用「表情发送格式」相同的「类型」。Viewer 的类型可在直播模式工具栏 → 「面部追踪」按钮打开的窗口中切换。

5-1. 打开窗口

  1. 在 Viewer 应用中显示头像
  2. 打开直播模式
  3. 点击直播面板中的 「面部追踪」 按钮

5-2. 切换类型

每次点击窗口上方的「类型」按钮,会按 VRM/VRChat 默认 → Perfect Sync → VRCFT 的顺序切换。请与捕捉应用中的选择保持一致。

Viewer 的「类型」捕捉应用的「表情发送格式」
VRM/VRChat 默认VRM 标准
Perfect SyncPerfect Sync
VRCFTVRCFT

5-3. 注意事项

  • 选择 VRCFT 时,各分类的表情强度滑块将被禁用:VRCFT 通过 VRChat OSC 直接驱动表情参数,因此 Viewer 端的 BlendShape 强度调整不会生效
可选

只把表情交给 VRCFaceTracking

可以采用只从捕捉应用发送身体动作、表情则由 VRCFaceTracking 发送的配置。不仅是 iFacialMocap,VRCFaceTracking 支持的各种模块都可以使用。

这基本上是面向熟悉 VRCFT 和面部追踪设备的进阶用户的设置

[捕捉应用] →VMC Protocol→ [Viewer 应用]
[iFacialMocap] → [VRCFaceTracking] →VRChat OSC→ [Viewer 应用]

分工

负责发送路径发送内容
动作VMC 协议身体、头部、手臂、手等的姿势
表情VRChat OSC眨眼、嘴巴、眉毛、视线等面部追踪

步骤

  1. 在捕捉应用中照常开始发送动作
  2. 关闭捕捉应用的 表情发送
  3. 启动 VRCFaceTracking,并在 VRCFaceTracking 中连接 iFacialMocap
  4. 在 Viewer 应用中将面部追踪类型切换为 VRCFT,并打开接收
  5. 确认 VRCFaceTracking 已将 Viewer 应用识别为连接目标,且 Viewer 中头像的表情会动
VRCFaceTracking
VRCFaceTracking
关闭表情发送
关闭表情发送
注意事项
  • 请先让 Viewer 应用进入接收状态,再启动 VRCFaceTracking 并进入追踪状态。不过,根据插件的不同,有时需要按相反的顺序操作才能被识别。
  • 有时重启一次 VRCFaceTracking 就能解决问题
  • 如果表情不动,原因可能在于头像中 VRCFT 插件的 FX 控制。特别是 VRCFury 生成的插件 (如 MrSauce 插件),请先启动 VRCFaceTracking,再让 Viewer 进入接收状态。
  • 关闭捕捉应用的表情发送,是为了避免经由 VMC 的表情和经由 VRChat OSC 的表情被重复应用。身体动作的发送保持开启即可
  • 如果不把 Viewer 应用切换为 VRCFT,就无法接收来自 VRCFaceTracking 的 VRChat OSC 表情参数
  • VRCFaceTracking 与 Viewer 应用之间的详细连接确认方法,请参阅 VRCFaceTracking 联动 指南

如果以上方法都试过仍然无法运作,请联系作者。不过,也很可能无法解决