为关节链条动画——移动肩膀,手臂和手跟随机械。直观但当手要到达精确点时很繁琐。
在角色动作捕捉或数字角色绑定时,你会处理一系列相连的关节——肩膀、肘部、手腕相互关联。正向运动学意味着:你移动最顶端的关节(父节点),所有下游的关节(子节点)会自动跟随。将上臂旋转45度,整个手臂都会随之旋转——无需中间计算,无需反向求解。系统将运动从上到下沿着链条传播。
实际优势在于其直观性。在片场或动画视口中:你抓住肩膀,感觉很自然,因为它符合现实的运作方式。直接、可理解的控制——正是你的大脑所期望的。计算量也很小;系统无需迭代优化。对于承载的动作、打击技巧,甚至是带有多个摇臂或机械臂的摄像机绑定,这通常是更快的解决方案。
弊端是:如果你想将手移动到空间中的特定位置——比如桌子上或另一个角色的脸上——你必须手动调整上臂、下臂和手腕以达到目标。这是迭代的,容易出错,而且对于多个关节来说很快就会令人沮丧。因此,对于这类任务,我们使用逆向运动学(IK):你放置手,系统会反向计算上臂和下臂的位置。尽管如此,正向运动学仍然很重要——对于从上到下进行控制的有机、自然的运动(动物的运动、脊柱的运动、触手的动画)。
在实践中,你经常会将两者结合:使用正向运动学进行粗略的姿势调整,然后使用逆向运动学进行手部定位。或者使用混合绑定,默认是正向运动学,并可选地添加逆向运动学控制器。对于极端变形——触手、尾巴、发束的绑定——正向运动学有时是唯一可行的方法,因为逆向运动学在多个关节时可能会陷入局部最小值。重要提示:不要机械地认为逆向运动学优于正向运动学。正向运动学并非过时,而是运动角色绑定的一个基本工具。