Hi, I am new to blender so I dont know, but is it posibol to control twist in spline Ik, now when I twist last bone in spline Ik chain it twist all others bones, is it posibol to get same if I twist first bone?
What I want is twist control from bottom and top (if posibol one ctrl in the middle too).
Right now if you have 5 bones in a spline Ik chain and you rotate last bone in the chain around it self it will rotate all others bones in the chain.
I want to controll bone rotation in Y in a spline Ik chain from the start of the chain and from the end of the spline and I want bones that are closer to rotate more bone 1=100% bone 2=75%…
Ohh… Umm… It might have to use constraints in the IKs and limiting rotation when another bone is rotated. There should/could be an easier way but I don’t know that. Sorry!
I’m not going to answer your question right now (rushing off in a hurry), though your question is a very good one so I’m at least bookmarking it for now as someone else might even have a go at this before I do.
I’m currently writing a book on Blender and IK spines are something I would like to include, and yes, spline twist would be essential, especially if you come from a background like being a Maya user.
At the moment, (total theory) I am thinking…
You will need curve of five points.
The top and bottom bones of the spine are duplicated as “controller” bones, which are not influenced by the spline, and are what the animator will move around in pose mode. You need to hook the two endmost beziers of your curve to either end (tip and base) of these controllers.
The middle of the curve gets hooked to a free floating controller bone.
…at this point, does the twist work? I’m not sure without actually trying it, I’m hoping that with the end controllers hooking more than just the very end points of the spline that it should. If not, something like copyrotation constraints may do the trick. Could you perhaps try and let me know? That way I’ll see your under “new posts” when I get back and we can go from there.
If all else fails, I can definitely give you a solution using B-bones instead of spline, which works even in Blender prior to 2.5 but let’s try to get the splines working first.
I had a go at my own theory when I got back from work today, and I’m concluding that splines are based on location only, so twist has to be derived by other means like successive copyrotation constraints.
Attached is my own version. Like yourself, I have used some copyrotation, but in the top end. This works to a point though I can see it fighting against other controllers if I were to apply it all over the rig; it’s also hard to make sense of posespace versus wordspace relationships when I’m this tired.
Anyway - here’s the current attempt. (Attached: spine08.blend).
Also, while it’s not actually using a Spline curve, I’ve attached a B-bone example like I mentioned earlier. It’s fairly complex but I think it works a you would like. Basically, if Splines don’t work with Y-axis roll, B-bones do. (bbone_spine_rig.blend)
Please let me know how you go with solutions to your Spline question; I’m searching lots of answers for things like that right now and am kind of overstretched at the moment.
I am thinking (new to blender so maybe this is wrong) about adding one more layer of bones on top of the spline that will be skin bones, someting like ribbon spline setup in maya.
This is if I cant isolate and control rotation on splineIk bones, then maybe if I add skin bones on top of that that will get position from spline bones but twist rotation I can do with copyrot.
Anyone bumps here for answers to question : Spline IK Twist in Blender.
It’s 2021, and Blender spline IK still don’t have twist option.
You might be able to pull this off with ribbon construction spline IK like what have done in Maya, but it’s still a pain workaround.