Been a little quiet lately because of a new obligation, but I finally got around to continuing work on my rig tonight.
I wanted to work on the Foot Roll attribute for my foot rig. Jason Schliefer’s method uses expressions, but I was able to do it with a nodal setup.
The way it works is I have two attributes: Foot Roll and Ball Roll Break. Foot Roll acts as a sort of SDK, except it’s not. Foot Roll is directly connected to the RX of a GROUP above my reverseToe Joint. It’s important that it’s not connected to the reverseToe itself because you would break the ToeRoll attribute.
Anyways, the other critical part of the node setup is a GreaterThan condition node. The logic goes as follows: if the Ball Roll is greater than the Foot Roll Break value, the result is equal to the current value of the Ball Roll minus the Foot Roll Break value. The False value is zero. Doing so makes for a smooth but linear transition into the foot bend.
For example: if the Foot Roll Break value is 30 and the Ball Roll is at 35, the output to the reverseFootGroup’s rotateX will be 5.
So again, we have a plusMinusAverage node computing the difference of the BallRoll minus the BallRollBreak value, a conditional node saying that if the BallRoll value is over the BallRollBreak value then we make the reverseFootGrp’s value equal to the output from the plusMinusAverage node we made earlier, and that’s it! It’s really pretty simple, and it allows you to change the angle at which the foot breaks as well as continue to maintain control via the other attributes. Great!