角色动画研究 —— IK的三种结算方法

本文深入探讨了角色动画中的逆向运动学(IK)技术,包括几何分析、循环坐标下降(CCD)和雅可比矩阵结算方法。通过几何分析,可以解决简单骨骼架构的IK问题;CCD提供快速但可能产生扭曲的解决方案;而雅可比矩阵则涉及更复杂的线性代数。这些方法广泛应用于游戏开发中的角色动画。
摘要由CSDN通过智能技术生成

这篇博客介绍了逆向运动学(Inverse Kinematics, IK)的三种结算方法。


背景

IK在角色动画的表现中有着很重要的地位。通常的角色动画都是使用FK(Forward kinematics)来进行计算,这种计算方法中父骨骼的变换与子骨骼的变换决定了子骨骼最终的位置。而IK则相反,IK是先决定子骨骼的变换,然后再推导父骨骼需要由此而产生的变换。

就如同人平时的行为一样——往往是手掌的位置和旋转需要先确定(拍到墙壁上的某个点,抓住某个东西等……)后,再进行手肘变换的计算。这也就意味着IK的结算可能产生未知个数的解(0个或多个……),有可能手掌根本抓不到一个地方,或者手掌到了一个地方手肘可以有多个形态和变换。

和机器人控制论很像……不是吗?其实IK结算在机器人的研究中也有很大的作用。

几何分析

如果说骨骼架构比较简单(例如肩->肘->腕,髋->膝->踝等),那么完全可以通过几何分析来进行IK的结算。

例如手臂上臂长度为 l1 ,下臂长度为 l2 ,再假设每个关节都只有两个旋转自由度,如下图。

IK_Configuration

那么最末端的关节便有了一个活动范围(reachable workspace),当结算IK开始的时候,就需要先确保末端关节在这个活动范围内:

|L1L2|X2+Y2L1+L2

IK_Reachable_Space

当末端关节的位置确定之后,骨骼架构中对应的两个关节偏转角度 θ1 θ2 就可以通过几何方法确定了。

令尾关节最终位置为 (X,Y) ,连接首关节和尾关节后,可以分析出最终解应该有两个,这两个解关于直线

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值