设置指南
本指南将引导您完成 Runtime MetaHuman Lip Sync 与您的 MetaHuman 角色的基本设置过程。
注意: Runtime MetaHuman Lip Sync 同时适用于 MetaHuman 和 自定义角色。有关设置自定义角色的详细说明,请参阅 自定义角色设置指南。
先决条件
开始之前,请确保:
- 您的项目中已启用 MetaHuman 插件(注意:从 UE 5.6 开始,此步骤不再需要,因为 MetaHuman 功能已直接集成到引擎中)
- 您至少有一个 MetaHuman 角色已下载并可在您的项目中使用
- 已安装 Runtime MetaHuman Lip Sync 插件
标准模型扩展插件
如果您计划使用 标准模型,您需要安装扩展插件:
- 从 Google Drive 下载 Standard Lip Sync Extension plugin
- 将下载的压缩包中的文件夹解压到您项目的
Plugins
文件夹中(如果该文件夹不存在,请创建它) - 确保您的项目设置为 C++ 项目(即使您没有任何 C++ 代码)
- 重新构建您的项目
- 此扩展 仅在 您想要使用 标准模型 时才需要。如果您只需要 真实感模型,可以跳过此步骤。
- 有关如何手动构建插件的更多信息,请参阅 构建插件教程
附加插件
- 如果您计划使用 音频捕获(例如,麦克风输入),请安装 Runtime Audio Importer 插件。
- 如果您计划使用 文本转语音 功能:
- 对于 本地 TTS(仅限标准模型),请安装 Runtime Text To Speech 插件。
- 对于 外部 TTS 提供商(ElevenLabs, OpenAI),请安装 Runtime AI Chatbot Integrator 插件。
动画蓝图设置
步骤 1:定位并修改面部动画蓝图
- UE 5.5 及更早版本(或 UE 5.6+ 中的旧版 MetaHumans)
- UE 5.6+ MetaHuman Creator 角色
您需要修改一个将用于您的 MetaHuman 角色面部动画的动画蓝图。默认的 MetaHuman 面部动画蓝图位于:
Content/MetaHumans/Common/Face/Face_AnimBP
你有几种实现唇形同步功能的选择:
- 编辑默认资产(最简单选项)
- 创建副本
- 使用自定义动画蓝图
直接打开默认的 Face_AnimBP
并进行修改。任何更改都会影响所有使用此动画蓝图的 MetaHuman 角色。
注意: 这种方法很方便,但会影响所有使用默认动画蓝图的角色。
- 复制
Face_AnimBP
并给它一个描述性的名称 - 找到你的角色蓝图类(例如,对于角色 "Bryan",它位于
Content/MetaHumans/Bryan/BP_Bryan
) - 打开角色蓝图并找到 Face 组件
- 将 Anim Class 属性更改为你新复制的动画蓝图
注意: 这种方法允许你为特定角色自定义唇形同步,同时保持其他角色不变。
你可以在任何能够访问所需面部骨骼的动画蓝图中实现唇形同步混合:
- 创建或使用现有的自定义动画蓝图
- 确保你的动画蓝图与包含和默认 MetaHuman 的
Face_Archetype_Skeleton
相同面部骨骼的骨架一起工作
注意: 这种方法为你与自定义动画系统集成提供了最大的灵活性。
从 UE 5.6 开始,引入了新的 MetaHuman Creator 系统。对于这些角色,插件提供了一个面部动画蓝图,位于:
Content/LipSyncData/LipSync_Face_AnimBP
此动画蓝图位于插件的内容文件夹中,每次插件更新时都会被覆盖。为防止丢失您的自定义设置:
- 将此资源复制到您项目的内容文件夹(例如,复制到
YourProject/Content/MetaHumans/LipSync_Face_AnimBP
) - 在您的角色设置中使用您复制的版本
- 对复制的版本进行所有修改
使用插件的面部动画蓝图:
- 找到您的 MetaHuman Creator 角色的蓝图类
- 打开角色蓝图并找到面部组件
- 将 Anim Class 属性更改为插件的
LipSync_Face_AnimBP
- 继续执行后续步骤以配置 Runtime MetaHuman Lip Sync 功能
步骤 2:事件图表设置
打开您的面部动画蓝图并切换到 Event Graph
。您需要创建一个生成器来处理音频数据并生成唇形同步动画。
- 标准模型
- 真实感模型
- 支持情绪的真实感模型
- 如果尚不存在,请添加
Event Blueprint Begin Play
节点 - 添加
Create Runtime Viseme Generator
节点并将其连接到 Begin Play 事件 - 将输出保存为变量(例如 "VisemeGenerator")以供在图表的其他部分使用
有关详细配置选项,请参阅标准模型配置部分。
- 如果尚不存在,请添加
Event Blueprint Begin Play
节点 - 添加
Create Realistic MetaHuman Lip Sync Generator
节点并将其连接到 Begin Play 事件 - 将输出保存为变量(例如 "RealisticMetaHumanLipSyncGenerator")以供在图表的其他部分使用
- (可选)使用 Configuration 参数配置生成器设置
有关模型类型、性能设置和处理参数等详细配置选项,请参阅真实感模型配置部分。
- 如果尚不存在,请添加
Event Blueprint Begin Play
节点 - 添加
Create Realistic MetaHuman Lip Sync With Mood Generator
节点并将其连接到 Begin Play 事件 - 将输出保存为变量(例如 "MoodMetaHumanLipSyncGenerator")以供在图表的其他部分使用
- (可选)使用 Configuration 参数配置生成器设置
有关情绪配置的详细信息,包括 情绪类型、强度设置、前瞻时间以及输出类型选择,请参阅情绪启用模型配置部分。
步骤 3:动画图表设置
设置好事件图表后,切换到 Anim Graph
以将生成器连接到角色的动画:
- 标准模型
- 真实感模型
- 情绪启用真实感模型
- 找到包含 MetaHuman 面部的姿势(通常来自
Use cached pose 'Body Pose'
) - 添加
Blend Runtime MetaHuman Lip Sync
节点 - 将姿势连接到
Blend Runtime MetaHuman Lip Sync
节点的Source Pose
- 将你的
VisemeGenerator
变量连接到Viseme Generator
引脚 - 将
Blend Runtime MetaHuman Lip Sync
节点的输出连接到Output Pose
的Result
引脚
- 找到包含 MetaHuman 面部的姿势(通常来自
Use cached pose 'Body Pose'
) - 添加
Blend Realistic MetaHuman Lip Sync
节点 - 将姿势连接到
Blend Realistic MetaHuman Lip Sync
节点的Source Pose
- 将你的
RealisticMetaHumanLipSyncGenerator
变量连接到Lip Sync Generator
引脚 - 将
Blend Realistic MetaHuman Lip Sync
节点的输出连接到Output Pose
的Result
引脚
- 找到包含 MetaHuman 面部的姿势(通常来自
Use cached pose 'Body Pose'
) - 添加
Blend Realistic MetaHuman Lip Sync
节点(与常规真实感模型使用相同节点) - 将姿势连接到
Blend Realistic MetaHuman Lip Sync
节点的Source Pose
- 将你的
MoodMetaHumanLipSyncGenerator
变量连接到Lip Sync Generator
引脚 - 将
Blend Realistic MetaHuman Lip Sync
节点的输出连接到Output Pose
的Result
引脚
注意: 情绪启用模型使用与常规真实感模型相同的 Animation Blueprint 节点。情绪功能由生成器内部处理。
后续步骤
现在你已经完成了基本的 Animation Blueprint 设置,接下来需要配置音频输入处理,以便将音频数据馈送到你的唇形同步生成器。
请继续阅读音频处理指南,了解如何设置不同的音频输入方法,包括麦克风捕获、文本转语音和音频文件处理。 有关高级配置选项和微调,请参阅配置指南。