For the complete documentation index, see llms.txt. This page is also available as Markdown.

为角色添加口型同步

了解如何使用 Convai 为您的 Unity 角色添加口型同步。提升真实感和交互性。

唇形同步系统

Convai 会根据开发者选择使用的面部模型,从后端发送 Viseme 或 Blend Shape 帧,返回后 Convai SDK 会开箱即用地对其进行提取和解析,并将其提供给 Convai LipSync 组件,之后该组件依赖于 SkinMeshRendererBlendshape 效应器骨骼效应器 来为 Convai 驱动的 NPC 提供逼真的唇形同步。

LipSync 系统的组成部分

Viseme 效应器列表

在这里,开发者会告诉 Convai SDK,Blendshape 数组的哪个索引会以多大的比例受哪个值影响。为了更好地解释其工作原理,我们用图示来理解。

这里的意思是,无论从服务器传来什么值,都会以 0.2 的倍率影响第 116 个索引处的 Blendshape,并以 0.5 的倍率影响第 114 个索引处的 Blendshape。引擎中的表现大致如下。

所以,你可以创建自己的效应器列表,或者使用我们在 SDK 中提供的众多列表之一。

如何创建你自己的 Viseme 效应器列表

在项目面板内右键,然后前往 Create > Convai > Expression > Viseme Skin Effector 这将创建一个 Viseme 效应器列表 Scriptable Object 现在你就可以定义自己的值了。

Viseme 骨骼效应器列表

在这里,开发者会告诉 Convai SDK,服务器传来的每个值会在多大程度上影响骨骼的旋转。为了更好地解释其工作原理,我们用图示来理解。

这里,骨骼的旋转会受到从服务器传来的值与效应器中值相乘后的影响。例如,对于 TH,该值会以 0.2 的倍率影响骨骼旋转,等等。引擎中的表现大致如下。

所以,你可以创建自己的骨骼效应器列表,或者使用我们在 SDK 中提供的众多列表之一。

我们使用这个公式来计算旋转

如何创建你自己的 Viseme 骨骼效应器列表

在项目面板内右键,然后前往 Create > Convai > Expression > Viseme Bone Effector 这将创建一个 Viseme 骨骼效应器列表 Scriptable Object 现在你就可以定义自己的值了。

Convai Lipsync 组件

当你将此组件附加到你的 Convai 角色上时,你会看到类似这样的内容。

让我们了解这些内容是什么

  1. 面部表情数据

    1. 头部 | 牙齿 | 舌头

      1. 渲染器:对应身体指定部分的 Skin Mesh Renderer

      2. Viseme 效应器列表:SkinMeshRenderer 的 Blendshape 将如何受到来自服务器的值影响。

    2. 下巴 | 舌头骨骼效应器

      1. 骨骼旋转会在多大程度上受到来自服务器的值影响?

    3. 下巴 | 舌头骨骼

      1. 分别控制下巴和舌头的骨骼引用

  2. 权重混合强度

    1. 在延迟更新中,在两个帧之间插值的百分比。

  3. 角色情绪

    1. 在这里了解更多关于角色情绪的信息 角色情感

向你的 Convai 角色添加 Lipsync 的步骤

  1. 在层级中选择你的 Convai 驱动角色。

  2. 在检查器面板中搜索 ConvaiNPC 组件,你会看到“添加组件”按钮。

  3. 点击它,选择 Convai Lipsync 组件,然后点击应用

现在你可以根据自定义配置来配置该组件,或者使用 Convai 随 SDK 提供的众多预设之一

现在你的 lipsync 组件就可以在你的应用中使用了。

最后更新于

这有帮助吗?