PDA

View Full Version : bhRigging - footRig


BasHe
12-06-2010, 04:24 PM
Hi,

I have been spending a lot of time to develop my own modular rigging solution in mel. I`ve never been really satisfied with the solution I used for the feet before. But now, I took some time to really design an easy to use and very dynamic foot rig. Here is a link to a video demonstrating the controlls:

http://www.youtube.com/watch?v=t-gdwsSuq58

it has:
- basic controlls for translating/rotating the ankle
- basic rotation for the toes
- reverse rotation to manually lift and adjust the heel
- footroll dial, a cyclic controll for quikly creating walk-cycles
- adjustable attributes to adjust the max heel angle, tip angle and ball angle in the cycle
- dynamic pivot

I`m curious to hear your thoughts on a system like this.

Bas

Kaleidoscope
12-06-2010, 06:04 PM
Wow! That looks really cool and easy to use. The moveable pivot seems really slick.
Well done sir! :)

Being both fairly new to rigging and from Sweden, I don't quite understand what a "modular rigging solution" means, maybe you could give me a quick explanation? :)
Thanks.

SkullboX
12-07-2010, 10:17 PM
I have to say the rig looks like it's got some interesting and clever features. Particularly the animated pivot and the novel footroll seem like interesting rigging exercises. Having said that, it looks horrible to animate with.

From a rigging point of view I was also very interested in creating a footroll solution that would take care of the feet while they're constrained, whether this was the heel, the ball or the tip of the toes.

The quality of almost any animation involving any of those controls however, is primarily determined by the arc of the leg rather than the contact of the feet. Besides, it is remarkably simple to animate the position of the feet entirely manually. Yet it is much more difficult and very annoying to correct the arc of the leg if it is controlled from any of three different pivots, neither of which are on the ankle.

I prefer as little controls as possible. The comment might sounds a bit harsh as the video does show your excellent rigging capabilities, but it looks anything but user friendly. Animators should be kept away from menu's, and spend that time animating. :)

BasHe
12-09-2010, 01:39 PM
Thank you for your replies.

Martin - A modular rigging sytem means I`ve got all these different parts (modules) like leg, arm, hand, foot, spine, etc. And can stick them together anyway I want. This gives a much more adaptable rigging system that can rig more than just bipeds.
A quick demo of my system:
http://www.youtube.com/watch?v=yQ-vMVCjJ1U

Bastiaan - This certainly was not just a rigging excercise. Feet are one of the most (if not the most) preferential part in any rig. All animators seem to prefer a differrent setup. With this setup I tried to meld all these setups in one.
- If you just use the ankle and toe controller you have a simple FK solution.
- Add the heel controller and you have a basic reverse foot
- With the foot-roll-dial I moved the regular foot-roll-attribute to a more visible spot and made it cyclic...
- The pivot is useful for any other rotation not covered by any other controller. As long as the rotation values are zeroed out you can place it anywhere without the foot going to slide. So you don`t NEED a separate button for that, it just makes life easier.

I don`t have that much experience animating, but I honestly cannot think of any other setup that allows so much controll and stability of the foot. How do you keep the foot from floating around with less controllers?

I have to agree with you though, the arc of the leg is a bit problematic. With 3 or more pivots (off ankle) which are all influencing the final position of the ankle, you get a bit unstable results in the shape of the leg, especially if it is (almost) straight. It is a valid issue and I more than welcome the critique...issues that are unknown can`t be solved, after all. I rigged up a solution for that problem after your comment...more on that when I tested it...

SkullboX
12-09-2010, 04:16 PM
Totally true about animator's preference, I understand it wasn't a rigging exercise. :)

I don`t have that much experience animating, but I honestly cannot think of any other setup that allows so much controll and stability of the foot. How do you keep the foot from floating around with less controllers?

Lots of keys, basically. I am quickest if I don't have to think about what sequence of controls would give the most 'stable' result.

For example the heel solution is pretty much exclusively used for the planting of the foot in walk/run cycles and it gives a nice mathematically correct start to the foot roll, but even in slow walkcycles it'll most likely only pivot on the contact point of heel for around 3 or 4 frames, the first of which you would have to set manually anyway regardless of the setup. Doing the other two or three by hand really doesn't rob you of that much time and in my experience tends to more than make up for the time you'd spend messing around with the arc using a more complex foot setup. So this was really easy to get rid of in our setup, especially since it tends to be the first in the hierarchy, furthest removed from the ankle.

The same pretty much goes for pivoting around the 'toe'. Again this is only really used towards the end of a footroll and will never take up an intimidating amount of frames. Even if you don't take into account the extra time it takes to get a proper arc, just skipping through a menu and selecting different controllers would cost (me) more time than just setting a few successive keyframes with 1 controller selected.

So right now we have the ball of the foot as the main controller for the foot (and leg), parented to that the controller for the toes. I'm going to try animating using the ankle as the pivot for the foot as soon as time allows it. I'm still skeptical whether that will yield better results in the same amount of time, but I really like the idea of being able to control the arc of the leg with only position.

It seems there is a tendency to try and automate too much out of some irrational fear of just going for it and setting keyframes, but I realize I'm quite far on the other side of that argument. :)


That modular rig demo looks really cool by the way, and in the end rigging necessities of course will entirely depend on the preferences of the animators you'll be working with.

BasHe
12-09-2010, 07:04 PM
Thanks for the explanation of your method of animating feet. I guess for most uses simple feet like the ones you describe will work just fine.
The goal to which I design my own systems is to see if I could make a rigged character dance with it. Dancing involves lots of foot positions and transitions, hence I think that would be the ultimate test in flexibility.

What I figured about the arc of the leg. Usually this arc is a result of the distance between the hip and the ankle. Is this a large distance, the leg is extended and if this distance is small, the leg is bent. Because with these complex feet the distance can fluctuate quite a bit, you get unwanted bending. This is, I think, the essence of the problem, which is more noticable as the leg is almost extended.
So I thought it might be useful to be able to lock the shape of the leg. Actually, the shape of the leg is determined bij the ratio of the length of the leg and the hip/ankle distance. This information could be used to lock the shape of the leg by scaling it acordingly to match the distance/length ratio you set and animate. For that I added 3 new attributes to the foot controller, one of which is read only and shows the current ratio. In difficult places of the animation you can blend to this locked state to create much more stable results...Another couple of attributes to keep track of for the animators, I know. But it is a relatively quick and straightforward fix, I think.
Here is a video showing the functionality and a quick walk-cycle on which I fixed only the front leg:

http://www.youtube.com/watch?v=SoFvcd3_Npc

CGTalk Moderation
12-09-2010, 07:04 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.