面部追踪
使用网络摄像头·iPhone的面部追踪
Motion Capture for VRC Avatar Viewer (以下「捕捉应用」) 可以将眨眼和嘴部运动等表情反映到虚拟形象中。分别选择表情数据的获取方式和向虚拟形象的发送格式。
2 个数据源 (获取方式)
- 网络摄像头 (默认) 从连接到 PC 的网络摄像头视频中推断表情。不需要额外的硬件,任何人都可以使用,但存在无法捕捉脸颊或舌头运动等限制。
- iPhone (iFacialMocap) 使用支持 Face ID 的 iPhone 和 iFacialMocap (付费 iOS 应用),可以获取基于 ARKit 的 52 种高精度表情数据。表现力远超网络摄像头。
选择通过「表情发送格式」来决定获取的表情数据以何种格式发送到虚拟形象。请先确认虚拟形象侧的支持格式,然后选择相应的支持格式 (详见 第 3 步 及以后)。
- 连接 iFacialMocap 时,iFacialMocap 的表情数据优先于网络摄像头 (身体运动保持网络摄像头)。
- 无论发送格式如何,如果启用了 iFacialMocap,将使用其表情数据
- 有关 VRChat 集成的详细信息,请参阅 VRChat 面部追踪 指南
用网络摄像头捕捉表情
这是默认方法。按照 直播模式指南 中的步骤打开摄像头后,表情会自动从网络摄像头推断。无需额外设置。

1-1. 可以捕捉的表情
- 眨眼 (左右眼分别)
- 元音 (あ・い・う・え・お)
- 视线 (上下左右)
- 眉毛上下、嘴部开闭、嘴角运动 等
1-2. 无法捕捉/表现不佳的动作
- 脸颊膨胀、舌头运动
- 在黑暗环境中精度会大幅下降。需要足够的亮度以清晰显示面部
- 侧面、低头等看不到正面的角度
- 单独使用网络摄像头时推荐使用 VRM 标准。在大多数虚拟形象上都能自然运动
- Perfect Sync 和 VRCFT 也可以工作。但是,如上所述存在无法捕捉的动作。
用 iPhone 捕捉高精度表情 (iFacialMocap)
使用支持 Face ID 的 iPhone (iPhone X 及以后版本),可以大幅提高表情精度,相比网络摄像头。需要使用 iOS 应用 iFacialMocap。

2-1. 所需物品
- 支持 Face ID 的 iPhone 或 iPad Pro
- 从 App Store 购买的 iFacialMocap (iOS 付费应用)
- iPhone 和 PC 连接到同一个 Wi-Fi (LAN)
2-2. iPhone 端的设置
- 在 iPhone 上启动 iFacialMocap
- 屏幕上会显示「请与 PC 端软件连接」,记下显示的 IP 地址 (例如:
192.168.1.10)
- 打开 iFacialMocap 的设置,检查「宛先设定」。如果「宛先IP地址」中有值,就不会显示。点击下方的「宛先设定のリセット」重新启动应用即可显示。
2-3. 捕捉应用端的设置
- 在捕捉应用的「iFacialMocap 的 IP 地址」栏中输入记下的 iPhone IP
- 将「使用 iFacialMocap」打开
- 当右侧状态变为 「接收中」 时,连接成功
2-4. 状态显示的含义
| 状态 | 含义 |
|---|---|
| 停止中 | 「使用 iFacialMocap」开关为 OFF |
| IP未入力 | iPhone 的 IP 为空。输入后会自动尝试连接 |
| 接続待機中 | 已发送握手信号,但 iPhone 未响应 (iFacialMocap 未启动 / IP 错误 / 不同网络等) |
| 受信中 | 正常接收表情数据 |
2-5. 可以捕捉的表情
可以捕捉基于 ARKit 的 52 种混合形状 + 头部旋转 + 左右视线。包括网络摄像头无法获取的脸颊膨胀和舌头动作 (虚拟形象需要具有相应的混合形状)。
- 启用 iFacialMocap 期间,身体、手臂和手指的运动会继续从网络摄像头获取
- 这是「表情来自 iFacialMocap,身体来自网络摄像头」的混合配置
确认虚拟形象支持的面部追踪格式
选择表情发送格式前,需要在 Viewer 应用端确认当前显示的虚拟形象支持哪些面部追踪格式。如果选择不支持的格式,从捕捉应用发送的表情数据在虚拟形象端将无法正确运动。

- 在 Viewer 应用中显示目标虚拟形象
- 打开直播模式 (Streaming)
- 在直播面板中点击 「面部追踪」 按钮
- 确认窗口上部「类型」按钮下方的 「支持:」 显示
- 「支持: VRM/VRChat 标准, Perfect Sync」 这样的格式表示当前加载的虚拟形象支持的格式
- 捕捉应用端的「表情发送格式」和 Viewer 端的「类型」应在这些支持的格式中选择相同的
- 如果选择了不支持的格式,表情可能无法运动,或只有部分混合形状被反映
选择表情发送格式 (混合形状标准)
根据第 3 步中确认的虚拟形象支持格式,从捕捉应用的「表情发送格式」下拉菜单中选择。

VRM 标准
通过 VMC 发送 VRM 原本具有的眨眼、元音、视线等基本表情。在任何虚拟形象上都能运动,但表现相对简单。VRChat 虚拟形象的眼睛和嘴也能运动。单独使用网络摄像头时的默认推荐。
Perfect Sync
通过 VMC 发送 ARKit 的 52 种混合形状。在 Perfect Sync 支持的虚拟形象上,嘴角、眉毛、眼睑的细微运动也能被反映。与 iFacialMocap 配合使用效果最佳。
VRCFT
VRCFaceTracking 5.x 的 Unified Expressions 标准。其特点是能够重现与 VRChat 中虚拟形象相同的表情。
- VRCFT 基本上需要向虚拟形象添加专用附加组件。Perfect Sync 可在 VRChat 虚拟形象和 VRM 虚拟形象上使用,如果它们支持的话。
打开表情发送
打开捕捉应用中发送部位的「表情」。如果已经打开,保持原样即可。

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

在第 3 步中确认的支持格式中,选择与捕捉应用端选择的「表情发送格式」相同的「类型」。Viewer 端的类型可以通过直播模式工具栏 → 「面部追踪」按钮打开的窗口进行切换。
5-1. 打开窗口
- 在 Viewer 应用中显示虚拟形象
- 打开直播模式 (Streaming)
- 在直播面板中点击 「面部追踪」 按钮
5-2. 切换类型
每次点击窗口上部的「类型」按钮,会按照 VRM/VRChat 标准 → Perfect Sync → VRCFT 的顺序切换。请与捕捉应用端的选择相匹配。
| Viewer 端「类型」 | 捕捉应用端「表情发送格式」 |
|---|---|
| VRM/VRChat 标准 | VRM 标准 |
| Perfect Sync | Perfect Sync |
| VRCFT | VRCFT |
5-3. 注意事项
- 选择 VRCFT 时,分类表情强度滑块将被禁用:VRCFT 通过 VRChat OSC 直接驱动表情参数,因此 Viewer 端的混合形状强度调整不会被应用
只让 VRCFaceTracking 处理表情
可以只从捕捉应用发送身体运动,由 VRCFaceTracking 发送表情。iFacialMocap 当然可以使用,还能利用 VRCFaceTracking 支持的各种模块。
基本上这是为理解 VRCFT 和面部追踪设备的高级用户准备的设置
VMC Protocol→ [Viewer 应用][iFacialMocap] → [VRCFaceTracking] →
VRChat OSC→ [Viewer 应用]
使用分工
| 负责部分 | 发送路径 | 发送内容 |
|---|---|---|
| 运动系 | VMC 协议 | 身体、头部、手臂、手等姿态 |
| 表情发送系 | VRChat OSC | 眨眼、嘴部、眉毛、视线等面部追踪 |
步骤
- 在捕捉应用中按通常方式启动运动发送
- 将捕捉应用的 表情发送 关闭
- 启动 VRCFaceTracking,在 VRCFaceTracking 端与 iFacialMocap 连接
- 将 Viewer 应用端的面部追踪类型切换为 VRCFT,并打开接收
- 确认 VRCFaceTracking 认识 Viewer 应用为连接目标,且 Viewer 上的虚拟形象表情运动


- 在 VRCFaceTracking 能够追踪的情况下,将 Viewer 应用设置为接收状态。顺序很重要。
- 如果 VRCFaceTracking 和 Viewer 应用之间无法交换 OSCQuery,虚拟形象将无法运动。Viewer 应用在从直播模式进行「接收」时进行交换。此时如果 VRCFaceTracking 不在追踪状态,交换将无法进行。
- 关闭捕捉应用的表情发送是为了避免 VMC 通过的表情和 VRChat OSC 通过的表情重复反映。身体运动发送可以保持打开状态
- 必须将 Viewer 应用端切换为 VRCFT,才能接收来自 VRCFaceTracking 的 VRChat OSC 表情参数
- 有关 VRCFaceTracking 和 Viewer 应用之间的详细连接确认,请参阅 VRCFaceTracking 集成 指南