跳到主要内容

如何使用插件

本指南将引导您为MetaHuman角色设置Runtime MetaHuman Lip Sync的过程。

先决条件

在开始之前,确保:

  1. 项目中启用了 MetaHuman 插件
  2. 项目中至少下载并可使用一个MetaHuman角色
  3. 安装了 Runtime MetaHuman Lip Sync 插件

附加插件:

安装步骤

步骤1:定位并修改面部动画蓝图

您需要修改一个将用于MetaHuman角色面部动画的动画蓝图。默认的MetaHuman面部动画蓝图位于:

Content/MetaHumans/Common/Face/Face_AnimBP

Face Animation Blueprint

您有多种选项来实现嘴型同步功能:

直接打开默认的 Face_AnimBP 进行修改。任何更改都会影响使用此动画蓝图的所有MetaHuman角色。

注意: 此方法方便,但会影响所有使用默认动画蓝图的角色。

重要: Runtime MetaHuman Lip Sync混合可以在任何可以访问包含默认MetaHuman Face_Archetype_Skeleton 面部骨骼的姿势的动画蓝图资产中实现。您并不限于上述选项 - 这些只是常见的实现方法。

步骤2:事件图设置

打开您的面部动画蓝图并切换到 Event Graph。您需要创建一个运行时 Viseme 生成器,以处理音频数据并生成Viseme。

  1. 如果尚不存在,请添加 Event Blueprint Begin Play 节点
  2. 添加 Create Runtime Viseme Generator 节点并连接到 Begin Play 事件
  3. 将输出保存为变量(例如 "VisemeGenerator"),以便在图的其他部分使用

Creating Runtime Viseme Generator

步骤3:设置音频输入处理

您需要设置一种方法来处理音频输入。根据您的音频源,有几种方式可以进行设置。

这种方法在讲话到麦克风时实时执行嘴型同步:

  1. 使用运行时音频导入器创建一个可捕捉的声音波形
  2. 开始捕获音频之前,绑定到 OnPopulateAudioData 委托
  3. 在绑定的函数中,从您的运行时 Viseme 生成器调用 ProcessAudioData
  4. 开始从麦克风捕捉音频

可复制节点

Lip Sync During Audio Capture

步骤4:动画图设置

设置完事件图后,切换到 Anim Graph,以连接Viseme生成器到角色的动画:

  1. 找到包含MetaHuman面部的姿势(通常来自 Use cached pose 'Body Pose'
  2. 添加 Blend Runtime MetaHuman Lip Sync 节点
  3. 将姿势连接到 Blend Runtime MetaHuman Lip Sync 节点的 Source Pose
  4. 将您的 RuntimeVisemeGenerator 变量连接到 Viseme Generator 插针
  5. Blend Runtime MetaHuman Lip Sync 节点的输出连接到 Output PoseResult 插针

Blend Runtime MetaHuman Lip Sync

注意: 嘴型同步插件被设计为非破坏性的与您现有的动画设置共同工作。它仅影响嘴唇运动所需的特定面部骨骼,保留其他面部动画不变。这意味着您可以在动画链的任何点安全地集成它 - 可以在其他面部动画之前(让那些动画覆盖嘴型同步)或在它们之后(让嘴型同步覆盖在您现有动画之上)。这种灵活性允许您在不发生冲突的情况下结合嘴型同步、眼部眨动、眉毛运动、情感表达和其他面部动画。

配置

Blend Runtime MetaHuman Lip Sync 节点在其属性面板中具有配置选项:

属性默认值描述
插值速度25控制嘴唇运动在不同 Viseme 之间过渡的速度。较高的值将导致更快、更突然的过渡。
重置时间0.2嘴型同步重置之前的持续时间(秒)。这有助于防止音频停止后嘴型同步继续。