def makeSingleChainStretchyIK(prefix, joint1, joint2, settings=None): ikHandle, effector = mc.ikHandle(n=prefix+"_ikHandle", sj=joint1, ee=joint2, sol="ikSCsolver") distNode = mc.createNode("distanceBetween", n=prefix+"_jntDist") mc.connectAttr(joint1+".translate", distNode+".point1") mc.connectAttr(ikHandle+".translate", distNode+".point2") mc.connectAttr(distNode+".distance", joint2+".tx")
09 September, 2012
Muscle using single chain stretchy IK
One way to create a simplified muscle movement is to have two joints in a single chain act as origin and insertion points. These joints are orient constrained such that they always aim at each other in a fixed axis. So when we move either of the joints the chain should stretch/squash and orient themselves pointing at each other. One of the ways to achieve this is using a single chain IK solver. Here is a script to do that.