Answered

Custom IK setup for a snake-like character issues

bartolomey_wong 7 months ago updated by Peter - Soxware Developer 3 months ago 2

Hello Peter,

Following your IK setup tutorial, I've set up the IK chain for my snake-like character (a part of it, its tail) like that:

https://take.ms/53JbyH

My model is actually a collection of models united into one. So like a toy thing, with many segments.

So the handle is on the last bone in the tail. But when I move the handle in the pose mode, I come across two issues:


1. The last segment of the tail seems very rigid, stuck to the previous segment, and they move together as one. You can see it here, there's no curve, no bending between segments in the tip of the tail:

https://take.ms/ahCrS

And in Blender you can see the borders of these segments and how they are arranged when I move the last bone:

https://take.ms/R71ok

Why is it not like that in Unity?

2. Another issue is, I can't rotate the bones via IK handle. I mean, when I choose Rotate tool and rotate the handle, the handle rotates, but this doesn't translate to the bones, to the mesh.

3. And last one, when I move the handle, the whole chain is kinda broken in the way it's bent, like that:

https://take.ms/MIBJl

So it has this very hard bending point after the first bone, and then other bones, though connected to the chain, behave very differently.

I mean, what I would love to achieve is the smooth bending of the whole chain, you know. So that the whole chain would curve like a snake's body, without such a sudden break in the chain like there is now.

Could you give me recommendations on how to achieve that? What do I do wrong?

UMotion Version:
Unity Version:

Answer

Answer
Answered

Hi,
thank you very much for your support request. Sorry for the late reply, I somehow haven't received a notification regarding your post.

Using IK for things like tails isn't going to generate natural "smooth" looking results (due to the nature of how the IK algorithm works). You also loose a lot of artistic control over it. Do this instead:

  • Hold Shift while selecting the first (top most) bone of the tail. This automatically selects all child bones too.
  • Then use the rotation tool to apply a rotation in the direction you want the tail to move. Notice how the rotation is smoothly distributed between all bones of your tail:

Image 1454

Please let me know in case you have any follow-up questions.

Best regards,
Peter

Also, one more issue: due to the placement of the handle on the end of the last bone, I can't actually see the last bone:


https://take.ms/3HU2f


When I move the handle in the pose FK mode, I can see the bone:

https://take.ms/rTeDC


Is there a way to place a handle on the last bone or near it somehow but at the same time to be able to see the last bone so that it can be manipulated?

Answer
Answered

Hi,
thank you very much for your support request. Sorry for the late reply, I somehow haven't received a notification regarding your post.

Using IK for things like tails isn't going to generate natural "smooth" looking results (due to the nature of how the IK algorithm works). You also loose a lot of artistic control over it. Do this instead:

  • Hold Shift while selecting the first (top most) bone of the tail. This automatically selects all child bones too.
  • Then use the rotation tool to apply a rotation in the direction you want the tail to move. Notice how the rotation is smoothly distributed between all bones of your tail:

Image 1454

Please let me know in case you have any follow-up questions.

Best regards,
Peter