FABRIK

前后延伸反向运动学(Forward And Backward Reaching Inverse Kinematics,简称 FABRIK)是处理一连串任意长度的骨骼(至少 2 节)的 IK 解算器。

要使用 FABRIK,需要先将 FABRIK 节点添加到动画蓝图动画图(见上图)。

添加后,该节点除了有 组件姿势(Component Pose),还有 效果器转换(Effector Transform),该转换可以是绝对转换,也可以是相对转换(相对于同一骨架中的另一骨骼);最终效果器(End Effector)的设置也和 TwoBone_IK 节点非常相似。

为了确定骨骼控件当前应用的力度,FABRIK 节点采用一个浮点 阿尔法(Alpha),它可以在节点本身上设置,也可以通过浮点变量设置。

FABRIK 节点的 细节(Details)面板中,您将找到可用于进一步调整解算器功能的更多设置:

FABRIK_Details.png

最终效果器(End Effector)部分,您可以确定目标位置和旋转。

属性 说明
位置(Location)、旋转(Rotation)、比例(Scale) 末梢骨骼的目标位置的坐标 - 如果效果器位置空间是骨骼,那么这就是相对于作为目标位置使用的目标骨骼的偏移(也可以在节点上作为引脚设置)。
效果器转换空间(Effector Transform Space) 设置骨骼在骨骼网格组件的参考帧中的位置。
效果器转换骨骼(Effector Transform Bone) 如果效果器转换空间是骨骼,那么这就是要使用的骨骼。
效果器旋转源(Effector Rotation Source) 控制旋转(维持组件空间、局部空间或匹配最终效果器目标旋转)。

解算器(Solver)部分,您可以定义要使用的骨骼串,从 末梢。末梢将尝试到达最终效果器位置。

属性 说明
末梢骨骼(Tip Bone) 设置末梢骨骼(从可用骨骼中选择)。
根骨骼(Root Bone) 设置根骨骼(从可用骨骼中选择)。
精度(Precision) 最终末梢位置相对于效果器位置之差的容差。该值越低,到达 最终效果器 目标的精度越高,但成本也越高。
最大迭代次数(Max Iterations) 为了控制性能和确保边缘用例不会使帧率下降而允许的最大迭代次数。
启用调试绘图(Enable Debug Draw) 切换用于调试关节旋转的轴的绘制。

设置(Settings)部分,您可以设置应用的力量。

属性 说明
阿尔法(Alpha) 骨骼控件的当前力量(也可作为节点上的引脚设置)。
阿尔法标度偏差(Alpha Scale Bias) 设置最小和最大输入标度值。
节点(Node) 如果将它设置为非相对于父项的局部旋转,可以用于重置效果器旋转源。