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

凝视与注意力快速入门

将 ConvaiAttentionController、ConvaiEyeGazeActuator 和 ConvaiHeadLookActuator 添加到角色中,分配配置文件,并在 Play Mode 中验证眼部与头部跟踪。

使用最少必需组件,为 AI 角色添加眼神接触和自然的头部运动。最终,角色会用眼睛和头部跟随主摄像机,并具有程序化的扫视和眨眼。

先决条件

  • A ConvaiCharacter 该组件位于角色的根 GameObject 上

  • 角色使用一个 人形骨骼绑定 并配置了 Unity Avatar

  • 对于眼球跟踪:该 Avatar 已 分配了眼骨 (在 Avatar 配置中为左眼 / 右眼)

  • 对于 AnimationRiggingGazeBridge (可选):该 com.unity.animation.rigging 包已安装,并且 CONVAI_ANIMATION_RIGGING 已在你项目的脚本定义符号中定义


设置

1

添加 ConvaiAttentionController

选择角色的根 GameObject。添加 ConvaiAttentionController (Convai → Embodiment → Attention Controller).

该组件默认启用了两个选项:

  • 在层级中发现提供器 — 自动查找所有 IFocusTargetProvider 角色及其子对象上的组件

  • 自动创建默认焦点提供器 — 添加一个内置提供器,指向主摄像机(或场景中第一个激活的摄像机)

基础设置下保持两项都启用。组件一激活,角色就会开始跟踪摄像机。

2

添加 ConvaiEyeGazeActuator

在同一个根 GameObject 上,添加 眼神注视 (Convai → Embodiment → Eye Gaze).

眼睛执行器会自动创建一个 ConvaiGazeCoordinator 在初始化期间将其创建在同一个 GameObject 上。你无需手动添加该协调器。

可选地,指定一个 ConvaiGazeEyeProfile 添加到 眼部配置文件 槽位。如果留空,该组件会使用内置默认值(18° 跟踪锐度、45° 偏航范围、30° 俯仰范围,启用扫视和眨眼)。

3

添加 ConvaiHeadLookActuator

在同一个根 GameObject 上,添加 头部朝向 (Convai → Embodiment → Head Look).

可选地分配一个 ConvaiGazeHeadProfile。内置默认值:40° 颈部偏航、30° 颈部俯仰、6.0 平滑锐度。

头部执行器通过共享的 ConvaiGazeCoordinator。当角色说话时,注视协调配置会将控制权更多转向头部并降低眼睛的贡献,从而形成自然地看向听众的行为。

4

分配一个 Attention Profile(可选)

如果你想调整注意力持续性——角色在移开视线前保持注视多长时间、获取新目标的速度有多快,或最大连续保持时长——请分配一个 ConvaiAttentionProfile 添加到 Attention Profile 槽位到 ConvaiAttentionController.

内置默认值:最长连续保持 5 秒、0.3 秒获取渐变、0.5 秒释放衰减。

通过以下方式创建配置文件: Create → Convai → Embodiment → Attention Profile.

5

进入播放模式

按下 Play。默认焦点提供器激活时,角色的眼睛和头部应跟踪 Scene 视图摄像机(或你的主运行时摄像机)。

预期结果: 角色的眼睛会以自然的扫视和偶尔的眨眼朝向摄像机移动。当摄像机与眼睛中心偏离超过约 10° 时,头部会平滑旋转以辅助注视。当角色说话时,注视会锁定到摄像机,并略微减小眼部范围。


替代方案:Animation Rigging 集成

如果你的角色使用 Unity 的 Animation Rigging 包,并且你更倾向于使用基于约束的注视而不是程序化骨骼写入,请使用 AnimationRiggingGazeBridge 来替代眼睛和头部执行器。

要求:

  • com.unity.animation.rigging 已安装

  • CONVAI_ANIMATION_RIGGING 已添加到 Player Settings → Scripting Define Symbols

  • 两条 MultiAimConstraint 角色骨架上已为头部和眼睛配置的资源

添加 AnimationRiggingGazeBridge 到角色的根 GameObject,并分配头部约束、眼部约束以及一个注视目标枢轴变换。该桥接器会在每一帧将枢轴移动到注意力目标点,然后约束会在动画图的 IK 过程中跟随它。


下一步

你的角色现在会用眼睛和头部跟踪关注目标。请阅读 Profiles & Tuning 以了解所有可用的调参参数,或阅读 Usage Examples 以获取针对不同场景的配置模式。

注意力与凝视配置文件凝视与注意力使用示例

最后更新于

这有帮助吗?