View Full Version : Stable Spine Twist over 180 degrees
05-02-2008, 07:56 AM
Morning all, We've got a specific key character here who's got a particularly flexible and long / stretchy spine. One of the key things is that he can turn his shoulders round over 180degrees to look behind him. The question is, has anybody come up with a fix for the Advanced Twist setup on a SplineIk handle so it can handle over 180 degrees without flipping?.
Our original spine setup just hooks the Y rotates of the shoulders and hips up to the twist factor, so that works fine. However, because of the extremes of this character the rotates from the shoulders and hips can't be relied on. Ie I can't just hook the rotate Y of these controllers up as in extremes there's gimbal axis to consider.... and in some poses, the local rotateZ will feed Y values in and twist incorrectly.
05-02-2008, 09:18 AM
You could use a ribbon spine.
a NURBS ribbon with the joints riveted onto the surface, then deform the surface whatever way you like.
05-02-2008, 05:50 PM
I've been using a dual splineIK setup to allow us upto 360 degrees of stable twist through the spine. The basic concept is to setup a lower splineIK from the hips to the middle of the spline, and an upper splineIK from the middle of the spline to the top. You could extend this further by adding more splineIK handles, depending on your needs.
Just make sure that the start joint of the upper IK is not the same joint as the endEffector of the lower IK. You can duplicate the endEffector joint in place, parent the duplicate to the original and continue the joint chain from the duplicate. Hmmm...hope that maks sense!?
You will also need a control (or some other transform) between each splineIK handle, to feed into the advanced twist. You could setup auto rotation for these intermediate controls or leave them alone for manual rotation.
Hope this helps...
05-02-2008, 05:50 PM
This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.