I've been using this tutorial ( https://www.youtube.com/watch?v=Q9f-WVs3ghI ) to create sticky feet and hands for my character rig. Sticky feet I've noticed is pretty standard for character rigging but I also need sticky hands for climbing animations so the hands don't move from their position when the rest of the body is being pulled up on the side of a cliff for example.
The issue I'm having is creating an animation for the arms similar to swinging a tennis racket so the hand basically moves from point A to point B following a path that's similar to half a circle. Simply putting the hand control bone at point A and then a few frames later at point B, makes the bone move in a straight line and not the circular motion that I need. So I've found 2 options that sort of work, but they don't look very clean and I was wondering if I have the right approach and if there's something that I can do to improve the solutions that I've found.
The first solution is to create a couple of empty bones at the shoulder and elbow and parent the hand control bone to the elbow and elbow to the shoulder, both with an offset. When I rotate these new empty bones, they works great, the entire arm swings nicely in a circular motion. The problem I'm having is that if I move the torso, then the elbow and shoulder bones are no longer sticking to those joints, they're now just floating in the air. They still work (sort of) but they don't look right. I can't parent them to the torso either, as that would prevent the hand from being sticky, as the torso would move the shoulder, the shoulder the elbow and the elbow the hand and in a climbing animation, the torso needs to move with the hand being sticky to whatever it's holding onto. If I try this same procedure with the legs, and create a knee bone and a hip bone, it's even messier as during most animations such as walking the torso constantly moves up and down. So this as a solution makes it so for most animations I have 8 bones (4 on each side) floating randomly and it just looks messy. Is this a good approach and am I just missing a constraint of some sort? Constraining any of these 8 bones to copy rotation or location from one of the arm or leg bones doesn't seem to work either, it makes it really hard to control those bones as they start rotating fast in random directions when I try using them.
So next I thought about using paths and when I move the hand control bone from point A to B, put it on a nice round path to get the motion that I need. I can use the Follow Path constraint and with the Influence level I can turn on and off various paths whenever I need them. The problem I'm having is that whenever I create a path, regardless of where its pivot point is or how I position it, the moment I add the Follow Path constraint the hand bone just moves a certain distance away, usually up and left/right away from the character. Is there a way to fix this issue without manually moving and rotating the bone so it's back to where it was initially? This is a bit of an issue because I can't always get it 100% so it makes some animations have small jitters. Animating with bones vs paths also seems more intuitive and easier to use, so I'd rather do it that way if possible.
So my questions are, am I on the right track with any of these solutions to creating a rig with sticky hands and feet? Is there anything that I can do to any of my solutions to improve them? Thanks!