1、1:创建一节腿部骨骼,命名;如图所示:
2、2:使用“IK控制柄工具”,点击骨骼ctrl_thigh和ctrl_ankle创建IK(是旋转平面解算器),命名;如图所示:
3、3:使用“距离工具(在“创建----测量工具”)”创建距离测量;(1)按“V”键分别吸附在骨骼ctrl_thigh和ctrl_ankle处;如图所示:
4、4:“点”约束:(1)选骨骼ctrl_thigh和定位器locator1;(2)选IK:thigh_ikHandle和定位器locator2;如图所示:
5、5:创建脚的IK控制器,命名为leg;(1)将IK:thigh_ikHandle按“P”键给控制器leg当子物体;如图所示:
6、6:给控制器leg“添加属性”stretch(在“通道盒的编辑处”),做腿部骨骼的无限拉伸;如图所示:
7、7:表达式结构为:if(条件) { 语句1: 语句2: } Else { 语句1: 语句2: }
8、8:查看距离节点的极限距离长度是多少:(1)选IK:thigh_ikHandle,将骨骼拉直,得到骨骼的“极限距离”;(2)选距离节点,按“ctrl+A”键打开“属性编辑器”查看;如图所示:
9、9:打开“表达式编辑器”(在“窗口---动画编辑器处”),编写脚本;编写:if(leg.stretch == 1){if(distanceDimensionShape1.distance >= 8.246){ctrl_thigh.scaleX = distanceDimensionShape1.distance / 8.246;ctrl_knee.scaleX = distanceDimensionShape1.distance / 8.246;}else{ctrl_thigh.scaleX = distanceDimensionShape1.distance / 8.246;ctrl_knee.scaleX = distanceDimensionShape1.distance / 8.246;}}elseif(leg.stretch == 0){ctrl_thigh.scaleX = 1;ctrl_knee.scaleX = 1;}点击“创建”即可;
10、10:给控制器leg“添加属性”knee_keep(在“通道盒的编辑处”),用来控制腿部膝盖骨骼;如图所示:
11、11:查看骨骼ctrl_knee和ctrl_ankle的默认参数都是4.123;如图所示:
12、12:打开“表达式编辑器”,编写脚本;编写:ctrl_knee.translateX = leg.knee_keep*0.1+4.123;ctrl_ankle.translateX = leg.knee_keep*0.1+4.123;点击“创建”即可;