大多数角色动画都是通过将骨骼的关节角度旋转到预定值来实现的,一个子关节的位置是由其父关节点的旋转角度决定的,这样,处于节点链末端的节点位置是由此链条上的各个旋转角和相对位移来决定的,可以讲这样决定骨骼位置的方法称为前向运动学
但是在实际应用中,上述过程的逆过程却非常的使用,即给定末端节点的位置,从而逆向推出节点链上所有其他节点的合理位置,这样需求非常普通,例如希望角色的手臂去触碰一个固定的物体或脚站立在不平整的路面上等,这种方法称为逆向运动学(1K),在Mecanim中,任何正确的设置了Avatar的人性角色都支持1K功能。
为了给角色模型设置1k,需要知道可能与之进行交互周边物体,进而设置1k的脚本,常用的animator 函数包含selkpositionweight(),setlkpositionhight(),setlkposition(),setlkrotation(),setlookatposition(),bobyposition()