角色动画研究 —— FABRIK

本文详细介绍了FABRIK反向动力学算法的工作原理,包括其在骨骼约束、多端约束与环形约束的应用,并与CCD、雅可比矩阵等其他IK算法进行了比较。FABRIK在游戏开发中,特别是UE4中,被广泛用于角色动画的高效计算。
摘要由CSDN通过智能技术生成

这篇博客介绍了FABRIK的算法,适应性和与其他IK算法的对比。


FABRIK

在之前的博客角色动画研究 —— IK的三种结算方法角色动画研究 —— 使用雅可比矩阵(Jacobian)来结算IK中,介绍了在游戏中常用的三角分析、CCD和在控制论中常用的雅可比矩阵的结算IK的方法。在这篇博客中将会介绍另一种IK结算方法,FABRIK。

FABRIK的工作原理

FABRIK的工作原理其实比较简单,相对于以计算效率见长的CCD来说应该还会更快一些,同时,效果也会更好。对于刚体骨骼的IK计算来说,应该是目前游戏开发这一块比较好用的IK结算算法了。

算法如下:

  1. 首先,针对一条从首端到尾端的bone chain,以及一个对应的Target point,先计算整条chain的长度,从而判断这个Target point是否可到达。
    1.1 如果不可到达,则要求根骨骼进行移动。通常的情境类似于一个人如果伸直了手或者一只长颈鹿伸长了脖子也无法够到目标点时,则此时需要自己本身就向目标点挪(在使用Jacobian矩阵计算的环境下,此时矩阵为irregular,无对应的逆可以算出来)。
    1.2 如果可以到达,那么这就意味着可以进行下一步的处理了,这里假设一共有五根骨骼(从根骨骼到末端骨骼分别是 p0 p 0 , p1 p 1 , p2 p 2 , p3 p 3 , p<

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值