在 Unity 中,Humanoid Avatar 为人形角色的动画提供了丰富的功能和高度的便利性。然而,对于使用 Generic Avatar 的非人形角色(或者出于其他目的,不适合使用 Humanoid Avatar 的角色)而言,目前编辑和自定义的能力相对有限,难以满足复杂动画系统的需求。为此,团结引擎对 Generic Avatar 的功能进行扩展,旨在提升其在动画制作和控制方面的灵活性与可定制性,使其在动画表现力和开发效率上更趋完善。本章节将围绕这些功能扩展展开详细介绍,包含以下子内容:
标题 | 描述 |
---|---|
通用角色镜像动画 | 介绍 MirrorMapping 资产和通用角色镜像动画的使用方法。 |
通用角色逆向运动学 | 介绍 TIK 组件和基于通用角色类型的逆向运动学使用方法。 |
通用角色动画重定向 | 介绍基于通用角色类型的动画重定向使用方法。 |
为了扩展 Generic Avatar 的动画能力,团结引擎引入了两个全新的动画资产:TRig 和 TRetargeter。这两个工具旨在为通用角色 IK 绑定和动画重定向方面提供更高的动画定制能力。
它们主要应用于以下两个核心场景:
定制化 IK 绑定:借助 TRig 资产,开发者可以为特定骨架结构创建个性化的 IK 绑定方案,以满足不同角色在动作表现上的独特需求。
定制化动画重定向:通过结合使用 TRig 与 TRetargeter,可以实现灵活高效的动画重定向功能,使动画资源能够在不同骨架之间共享与复用。
TRig、TRetargeter 和其他部分的关系图如下:
IK 处理和动画重定向的整体流程如下图所示:在 Editor Mode 下,您可以进行编辑、设置和预览;在 Play Mode 下,结合 AnimGraph 实时修改参数查看效果。
团结引擎对通用角色的姿势进行扩展,新增支持修改角色的默认姿势的功能。如下图所示,通过 Generic Avatar 的 Configure 按钮进入编辑界面后,可以在该 Pose Tab 下通过点击 +/- 号按钮新增/删除姿势,这些姿势被存储于 Custom Pose Library。默认姿势(名为 “Default”)为 FBX 导入时候的初始姿势不可以进行修改,需要通过创建新的姿势来进行修改。
如果勾选 Override Default Pose 选项,则会使用当前选中的默认姿势来覆盖该角色 Prefab 的姿势。
新增的姿势可以通过在场景中修改 Transform 组件或者 Auto Pose 工具进行修改。Auto Pose 工具目前提供的以下自动修改姿势的方式,可以作用于当前姿势上:
Auto Pose 工具选项 | 说明 |
---|---|
Apply Default Pose | 导入时姿势。 |
Sample Bind-Pose | 根据蒙皮权重计算得到的姿势。 |
Copy From Clip | 有两种使用方式: (1) 直接点击该选项,在弹出窗口中选择目标 AnimationClip 或者 FBX 文件。 (2) 先在 Project 界面中选中 AnimationClip,再点击该选项。当输入的 AnimationClip 合法,则会将该 AnimationClip 的第一帧作为姿势应用到当前角色上。 |
Force T-Pose | 对于类人形的模型,可以强制设置为 T-Pose。 |
Copy From Custom Pose Library | 可以复制现有 Custom Pose Library 当中的姿势 |
修改完成后,可以通过右键姿势选择 Set As Default 或者点击 Set As Default 按钮将该姿势设置为默认姿势。最后,通过点击 Revert/Apply 按钮进行重置/应用。也可以点击 Save as Clip 按钮,将当前角色姿势导出为一个 AnimationClip 资产。