Possible to create spline IK for a curved set of joints?


#1

Very sorry for the double post, I didn’t see this char setup specific forum at initially.

Hi, new to Maya. I bought the Animator Friendly Rigging tutes and I have a subscription to Digital Tutors. While doing tutes that go through setting up a spline IK spine for a character, both tutes that I’ve looked at so far say that you should create the joints for the spine straight rather than with any curve that follows the back. This is so that the twisting for the spline IK is easy to set up. But I’d like to create a spine that has an S curve in it as the base position. I’ve tried as few things like manually making sure all of the joints have their local rotations facing the same way(modifying this while in hierarchy and also unparented) , but I’ve not been able to get a curved spine to work nicely with the twisting in spline IK. Does anyone have any tips or tutes on how I might go about this?

Cheers,

Cg.


#2

How extreme is the ‘S’ curve in the spine and in what ways is the spline IK not behaving how you want it to?

Another possible method is a Ribbon spine.

Kobes


#3

OK, I’ll start with one problem that I’ve come across that I wasn’t aware of when I sent my original post.

If the joints aren’t in a straight line when you assign spline IK, the IK handle doesn’t end up in the same spot that the end joint was. The more curved the initial joints, the less accurate the position of the IK handle is. I did just try to reposition the underlying curve points to try to correct this, but the curve point are in the correct position, it’s the joints that seem to have repositioned themselves.

Cheers,

Cg.


#4

I think what you are seeing is the effect of the “auto simplify curve” option. If you turn that off then the ik handle and the end joint should line up on the end of the curve. The problem is that the shape of the curve probably no longer matches the “nature” of the shape of the joint chain, and may not be what you want either.

I think the best result, in this case, might be when you first create the spline curve manually and fit your joints to that curve manually and then make the splineIK without the auto options. More work, but you get what you expect.

As for your initial problem (in your first post)… Was that a problem with joint flipping? I usually use the advanced twist controls with world up type set to “object rotation up start and end”. Then you supply suitable objects to be the world up object at either end. These could be two more joints, not attached to the other chain, and you could bind the spline curve to these joints. However, while this usually works well (especially when combined with stretchy spines), it may still fail to resolve twisting in an extremely bent spine, and if I needed that then the ribbon-spine set up could be the way to go.

Its a while since I’ve actually done some of this, so I hope I’m getting most of it right. Proceed with caution. :wink:

David


#5

The only way I have found that solves the twist issue, is to build your ik spline straight(and setup twist), and then use padding groups to rotate your spine into the position desired. You are going to always get a broken twist setup if you do not build it straight, that is just the nature of the spline twist. My thought on it is it has something to do with the orientation of the cv points, maya does not always seem to properly configure the orientation of all the cv points of a curve unless it is straight. That is why you will see your joints twisting or flipping because they are trying to adjust to that points orientation.


#6

make sure you freeze transforms and delete history on your control objects or you will get the crazy action…if thats done you can get decent deformation without getting into ribbons


#7

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.