Advertisement

状态机 & IK控制

阅读量:

1、子状态机设计与实现

所谓子状态机,即在原有状态机结构中嵌套另一个状态机,其核心功能在于将某一特定状态下所包含的多个动作状态进行整合,从而构成更为复杂的整体状态。例如,某项技能由三个连续动作组成,包括蹲下、开火以及站起,在执行该技能时这三个动作将依次触发。针对此类情况,可以将这些动作统一纳入子状态机中进行管理与控制。

2、创建子状态机

在Animator Controller窗口内,通过右键操作选择创建子状态机功能

3、编辑子状态机设计与实现

需特别关注子状态机与外部状态之间的关联机制

当所连接的目标为子状态机时,系统将自动跳转至该状态机的初始状态

4、如何进行IK控制

1.在状态机的层级设置中 开启 IK 通道

2.继承MonoBehavior的类中

Unity中设定了一项IK回调函数,即OnAnimatorIK。

在该函数内部,可通过调用Unity所提供的与IK相关的应用程序编程接口,实现对IK的控制。

3.Animator中的IK相关API

SetLookAtWeight 设置头部IK权重
SetLookAtPosition 设置头部IK看向位置
SetIKPositionWeight 设置IK位置权重
SetIKRotationWeight 设置

全部评论 (0)

还没有任何评论哟~