egret-docs-master/DB/dbPro/advancedFeatures/IK/README.md

2.3 KiB
Raw Permalink Blame History

简介

IK是反向动力学Inverse Kinematics的缩写。

DragonBones Pro 从 4.5.0 开始支持IK约束功能

FK为正向动力学的缩写。通常情况下父骨骼带动子骨骼运动即为正向动力学。例如大臂带动小臂大腿带动小腿。 IK与FK相反用来实现由下而上的驱动。例如做俯卧撑时手撑住地面支起身体。

下图就是一个典型的IK约束的例子。 大腿为父骨骼小腿围子骨骼。两个骨骼被IK约束在红色的约束目标上。 特别注意的是红色的骨骼并非为小腿的子骨骼。而是和大腿骨骼同级的骨骼。

拖动红色的约束目标骨骼IK约束便会不断调整父子骨骼的旋转值使得子骨骼的末端固定在约束目标骨骼上。

添加IK约束

选中骨骼后在属性面板可以看到两个IK约束按钮点击便可创建IK约束。

  • 末端创建约束目标: 在选中骨骼的骨骼末端自动创建约束目标骨骼并绑定IK约束。
  • 自定义拾取约束目标: 手动指定作为约束目标的骨骼并绑定IK约束。

IK约束特性

  • 绑定了IK约束的骨骼外框显示为红色
  • 作为IK约束目标的骨骼整体显示为红色
  • 单根骨骼可以绑定IK约束
  • 两根连续父子骨骼可以绑定IK约束
  • 两个以上骨骼无法绑定IK约束
  • 非连续父子骨骼无法绑定IK约束
  • 非父子骨骼无法绑定IK约束
  • 所选骨骼的直接或间接子骨骼不能手动指定为IK约束目标骨骼
  • 关闭“旋转”继承的骨骼无法绑定IK约束
  • 绑定了Ik约束的骨骼不能关闭“旋转”继承

添加了IK约束的骨骼的属性面板如下

其中IK约束属性部分包括

  • 名称IK约束的名称默认为自动命名也可以重命名。
  • 骨骼IK约束所绑定的骨骼
  • 目标:作为约束目标的骨骼的名称
  • 弯曲IK的弯曲方向
  • IK权重IK约束影响骨骼的权重

当前的版本中还不支持在动画播放中变换弯曲和Ik权重的值。

约束目标骨骼的属性面板如下:

其中IK约束目标属性和IK约束属性相同只是没有目标项因为约束目标即为约束目标骨骼本身。