如何将插件用于自定义角色
本指南将引导您完成为非MetaHuman角色设置Runtime MetaHuman Lip Sync的过程。此过程需要您熟悉动画概念和角色装配。如果您需要针对特定角色实现此功能的专业支持,可以联系[email protected]获取帮助。
关于唇形同步模型的重要说明
自定义角色仅支持标准(更快)模型。
真实感(更高质量)模型专为MetaHuman角色设计,不能用于自定义角色。在本指南中,当引用主设置指南时,您应始终遵循标准模型的说明。
需要扩展插件: 要将标准模型用于自定义角色,您必须按照主设置指南先决条件部分中的说明安装标准唇形同步扩展插件。
本指南中描述的所有自定义角色实现都必须使用此扩展插件。
先决条件
在开始之前,请确保您的角色满足以下要求:
- 具有有效的骨骼
- 包含用于面部表情的变形目标(blend shapes)
- 理想情况下具有10+个定义视位(visemes)的变形目标(视位越多=唇形同步质量越好)
插件需要将您角色的变形目标映射到以下标准视位:
Sil -> Silence
PP -> Bilabial plosives (p, b, m)
FF -> Labiodental fricatives (f, v)
TH -> Dental fricatives (th)
DD -> Alveolar plosives (t, d)
KK -> Velar plosives (k, g)
CH -> Postalveolar affricates (ch, j)
SS -> Sibilants (s, z)
NN -> Nasal (n)
RR -> Approximant (r)
AA -> Open vowel (aa)
E -> Mid vowel (e)
IH -> Close front vowel (ih)
OH -> Close-mid back vowel (oh)
OU -> Close back vowel (ou)
注意: 如果您的角色使用不同的视位(viseme)系统(这很常见),您不需要为每个视位寻找完全匹配的映射。近似映射通常就足够有效——例如,将您角色的SH
视位映射到插件的CH
视位就能正常工作,因为它们是发音位置相近的龈后音。
视位映射参考
以下是常见视位系统与本插件所需视位之间的映射关系:
- Apple ARKit
- 基于FACS的系统
- 普雷斯顿·布莱尔系统
- 3ds Max 音素系统
- 自定义角色 (Daz Genesis 8/9, Reallusion CC3/CC4, Mixamo, ReadyPlayerMe)
ARKit提供了一套全面的面部动画混合形状,包括多种嘴型。以下是如何将它们映射到RuntimeMetaHumanLipSync视位:
RuntimeMetaHumanLipSync视位 | ARKit等效混 合形状 | 备注 |
---|---|---|
Sil | mouthClose | 中性/休息状态 |
PP | mouthPressLeft + mouthPressRight | 对于双唇音,同时使用两个按压形状 |
FF | lowerLipBiteLeft + lowerLipBiteRight (或 mouthRollLower) | 下唇接触上齿,如"f"和"v"音 |
TH | tongueOut | ARKit可直接控制舌头 |
DD | jawOpen (轻微) + tongueUp (如果有舌头骨骼) | 舌头顶住齿龈;轻微下巴下垂 |
KK | mouthLeft 或 mouthRight (轻微) | 轻微嘴角拉动近似软腭音 |
CH | jawOpen (轻微) + mouthFunnel (轻微) | 组合形成龈后音 |
SS | mouthFrown | 轻微皱眉用于齿擦音 |
NN | jawOpen (非常轻微) + mouthClose | 几乎闭合的嘴部配合轻微下巴打开 |
RR | mouthPucker (轻微) | 轻微圆唇用于r音 |
AA | jawOpen + mouthStretchLeft + mouthStretchRight (或 jawOpen + mouthOpen) | 大张嘴巴发"ah"音 |
E | jawOpen (轻微) + mouthSmile | 中等张开配合轻微微笑 |
IH | mouthSmile (轻微) | 嘴唇轻微展开 |
OH | mouthFunnel | 圆唇开放形状 |
OU | mouthPucker | 紧密圆唇 |
FACS(面部动作编码系统)使用动作单元(AUs)描述面部运动。许多专业动画系统采用基于FACS的方法:
RuntimeMetaHumanLipSync视位 | FACS动作单元 | 备注 |
---|---|---|
Sil | 中性 | 无激活动作单元 |
PP | AU23 + AU24 | 嘴唇按压+嘴唇收紧 |
FF | AU22 + AU28 | 嘴唇漏斗+嘴唇吸吮 |
TH | AU25 (轻微) + AU27 | 嘴唇分开+嘴巴拉伸 |
DD | AU25 + AU16 | 嘴唇分开+下唇压低 |
KK | AU26 + AU14 | 下巴下垂+酒窝形成 |
CH | AU18 + AU25 | 嘴唇撅起+嘴唇分开 |
SS | AU20 | 嘴唇拉伸 |
NN | AU25 (非常轻微) | 轻微嘴唇分开 |
RR | AU18 (轻微) | 轻微嘴唇撅起 |
AA | AU27 + AU26 | 嘴巴拉伸+下巴下垂 |
E | AU25 + AU12 | 嘴唇分开+嘴角拉动 |
IH | AU12 + AU25 (轻微) | 嘴角拉动+轻微嘴唇分开 |
OH | AU27 (轻微) + AU18 | 轻微嘴巴拉伸+嘴唇撅起 |
OU | AU18 + AU26 (轻微) | 嘴唇撅起+轻微下巴下垂 |
普雷斯顿·布莱尔系统是一种经典的动画标准,使用描述性名称来表示嘴型:
RuntimeMetaHumanLipSync 视位 | 普雷斯顿·布莱尔 | 备注 |
---|---|---|
Sil | Rest | 中性闭合嘴部位置 |
PP | MBP | 经典的"MBP"嘴型 |
FF | FV | "FV"位置,下唇抵住牙齿 |
TH | TH | 舌头触碰前齿 |
DD | D/T/N | 这些辅音的相似位置 |
KK | CKG | 硬辅音位置 |
CH | CH/J/SH | 这些声音的轻微撅嘴 |
SS | S/Z | 略微张开的牙齿位置 |
NN | N/NG/L | 与D/T相似但舌头位置不同 |
RR | R | R音的圆唇 |
AA | AI | 大张的嘴 |
E | EH | 中等张开的嘴 |
IH | EE | 嘴唇展开 |
OH | OH | 中等圆唇 |
OU | OO | 紧圆唇 |
3ds Max 为其角色工作室使用基于音素的系统:
RuntimeMetaHumanLipSync 视位 | 3ds Max 音素 | 备注 |
---|---|---|
Sil | rest | 默认嘴部位置 |
PP | p_b_m | 直接对应 |
FF | f_v | 直接对应 |
TH | th | 直接对应 |
DD | t_d | 直接对应 |
KK | k_g | 直接对应 |
CH | sh_zh_ch | 组合形状 |
SS | s_z | 直接对应 |
NN | n_l | 这些声音的组合 |
RR | r | 直接对应 |
AA | ah | 开放元音 |
E | eh | 中元音 |
IH | ee | 闭前元音 |
OH | oh | 后圆唇元音 |
OU | oo | 闭后元音 |
具有视位或嘴部混合形状/变形目标的自定义角色(Daz Genesis 8/9、Reallusion CC3/CC4、Mixamo、ReadyPlayerMe等)通常可以合理近似地映射到插件的视位系统。
创建自定义姿势资产
按照以下步骤为您的角色创建自定义姿势资产,该资产将与Blend Runtime MetaHuman Lip Sync
节点一起使用:
1. 定位角色的骨骼网格体
找到包含您想要用于唇形同步动画的变形目标(混合形状)的骨骼网格体。根据角色设计,这可能是全身网格体或仅面部网格体。
2. 验证可用的变形目标
确保您的骨骼网格体具有适合用作唇形同步动画视位的变形目标。大多数支持面部动画的角色都应具有一些音素/视位变形目标。
3. 创建参考姿势动画
- 前往
创建资产 -> 创建动画 -> 参考姿势
- 为动画序列输入描述性名称并保存到合适位置
- 创建的动画序列将自动打开,显示循环播放的空动画