开发

在 Unreal 中使用 Oculus 口型同步

更新时间: 2026年4月17日
End-of-Life Notice for Oculus Lipsync Plugin
Oculus 口型同步插件已进入停止服务阶段,将不再获得进一步的更新或支持。对于音频驱动的口型同步,运动 SDK 利用基于音频的面部追踪提供等效的 Viseme(视素)功能,通过 XR_META_face_tracking_visemes OpenXR 扩展提供相同的 15 个 Viseme。
运动 SDK 中的 OculusXRMovement 模块支持基于视觉的面部追踪(Meta Quest Pro)和基于音频的面部追踪(Meta Quest 2 及更高版本)。基于音频的面部追踪从音频输入中生成 Viseme,可作为从 Oculus 口型同步插件迁移的途径。
此文档将不再更新,并且可能会被删除。
本指南描述如何在您自己的 Unreal Engine 项目中使用 Oculus 口型同步插件。您可能会发现将演示项目作为参考会十分有用。您应当完成下载与设置等步骤,以将口型同步添加到您的 Unreal 项目中。

使用 OVRLipSync Actor 组件

要在实时模式下使用口型同步:
  • 必须将 OVRLipSync Actor 组件添加到具有您希望控制的形态或纹理目标的每个执行器。选择您想用于驱动唇部动画的执行器,选择添加组件,然后添加 OVRLipSync 执行器 组件。下图展示了一个示例。
  • OVRLipSync Actor 组件提供了以下选项:
    • 提供者类型指定了要使用哪些类型的笑声提供者。可用选项包括:
      • 原创
      • 强化
      • 笑声强化
    • 输入音频流的采样率
    • 启用硬件加速指定了是否在支持的平台上使用 DSP 加速。下图展示了一个示例。
  • 在执行器或 Level Blueprint 中,读取视素,并在 On Visemes Ready 事件中改变对应形态目标。
  • 通过调用组件的启动功能来开始实时捕捉
当预测准备就绪后,OVRLipSync Actor 组件将触发 On Visemes Ready 事件。

使用口型同步驱动您的执行器的唇形动画

OVRLipSync Actor 组件还定义了用于驱动您的执行器的唇形动画的以下 Blueprint 功能:
功能/方法结果
GetVisemes
返回当前的视素概率数组。
GetVisemeNames
返回默认视素名称列表。
GetLaughterScore
返回当前音频帧笑声概率(当组件配置为使用笑声强化提供者时不为零)。
FeedAudio
将音频数据(作为单音 16-bit 签名的指定采样率整数音频流数据包)输入 Oculus 口型同步引擎。
分配视素至形态目标
取得一个形态目标名称数组和骨骼网格组件,分配当前视素权重至这些目标。
开始
开始对音频流的实时处理。
停止
停止对音频流的实时处理。