How do you handle where to place feet in a walk/run cycle?

I already have a solution for this, which I arrived at through trial and error, but I would like to hear how other people do it. How do you handle where to place a rigged character’s feet in a walk cycle? The big thing I’m wondering about is step #4 below. I haven’t seen other people do it this way, but maybe it’s common and I just haven’t run across it.

Here’s what I do:

  • Establish exactly where the characters need to be at various points in the animation. This Monsters Inc. layout clip is basically what I do, where the characters just slide around and hit their marks: https://youtu.be/NJEbw4uRUIU?t=156
  • Figure out how far a step should be and how many frames it should be. This is at first by trial and error, seeing how fast the object needs to move to get to its mark as well as how far the rig lets me move the foot.
  • Animate each foot so it’s sliding/shuffling to the new location. The knee never comes up at this point, and the inbetweens are not addressed.
  • Take two skinny pole objects (not to be rendered) and place them right where the ankle meets the ground. The poles should be approximately the same width as the character’s ankles so you can clearly see if you are intersecting the ankles. Use these poles to determine where the foot on the ground should be for all of the inbetweens. Animate all of the inbetweens for when each foot is on the ground. In other words, if a foot is intended to be in one place in the ground but the character itself is moving forward, then you must compensate for the foot’s position so that it appears to be in the same place as the previous frame until that foot is ready to be lifted. Also, if there are any pivots/turns that the character takes, animate those as well.
  • Animate the Z axis for each foot so the knee lifts up when appropriate. Put in whatever sort of “style” the foot up/down needs, if necessary.
  • Animate the “floppy bits” – make the toes flop down when the foot comes up, make the toes flip up when the foot is moving down, let the toes relax back to their normal position after they hit the ground – it depends on the character.

Thoughts?

I just measure about 2 BU (2 feet) forward from the opposite foot, for each normal step, which is about equivalent to a normal 6 ft. man’s step-length. Then I just keyframe each step between point A and point B, going through it in several passes, with each adding a little more detail to the step-action. On the initial pass I just slide the feet and keyframe, and then with later passes add the ankle rotations, leg lifts, etc.

I always use an empty … or a cube object that only has edges… (no faces… so it won’t render) then size the Empty so that it measures out the stride of that particular character from back of the heel of the front foot (at full stride… at heel strike) to front of the toe of the back foot (again at full stride) then make my first Blockings as full strides Left side then Right side… etc… then when when ever you reach a place where the character does anything other than a regular walk… (like starts or stops) or even does any kind of turn or stoop or jump… those all have to be custom animated anyway and you end up eye balling them out…

also I might even use an Array modifier on my stride box if the guy has a long walk with many steps… but remember your measuring from heel back to the toe… not including the length of the foot… so when you make an Array the distance between each stride box has to be the length of the foot(shoe)…