Multiple interpolations of animation keyframes

Started by
3 comments, last by charlieC 21 years, 5 months ago
How do you interpolate multiple animations at the same time using only the same model/bones ? For example, I want see my character wave his hands at the same time his running. It should be possible, right? Thanks, charlieC
Advertisement
If you wanted to do this "manually" you would have to maintain multiple animation loops at the object level.

One animation for running.
One for a hand waving.

The keyframe of each animation can only affect the relevent joints (the running animation and hand waving animation can't work with any of the same joints).

Then each frame you interpolate the joints towards their target orientation (each keyframe sets the target orientation for the joints).

That's my high level fly over.

If, after the hand is done waving, you wanted the hand to go back to a running posture, that's a little trickier. You almost need three animations (one with just legs running, one with a waving hand, and one with full body running)


[edited by - Waverider on October 21, 2002 3:34:06 PM]
It's not what you're taught, it's what you learn.
Fast reply
Thanks!

It''s something like you described I''ve been thinking about.
But as you said, going from waving to running animation with arms seems very tricky.

Could it be better to have one animation with waving hands, one with running legs and one with arms/torso with a running posture?
Then combining these to achieve the different poses?
Oh well, got enough problems to solve.

Know some book on this subject?


Thanks again for the reply,
charlieC


It''s likely whatever I suggest you have already thought of at this point.

I know of no books, sorry.

Best of luck!
It's not what you're taught, it's what you learn.
I read of a technique called IIRC animation blending. Basically, you would have a full body run anim, and a hand wave anim that only held info for the arm. Each anim is weighted, which allows for blends to be adjusted over time. A weight of 1.0 completely controlls the bones in the anim, so you''d have a character in a run cycle weighted at, frex, 0.5, and then add a wave animation ramped quickly from 0.0 to 1.0, hold it at 1.0 for a while, then ramp it back down to 0.0. This would cause his arm to smoothly raise from its run anim to a wave, and back.

You could also do things like adding a limp anim when the character gets damaged. When he gets hit, add a single-leg limp anim weighted at 0.8 or 0.9. As the character regains health, you could ramp down the limp anim''s weight, blending it more and more back to the standard run anim.

I''m not good enough yet to implement a skeletal animation system, but when I do, I''d like to attempt something like this.

Pentestoy.

This topic is closed to new replies.

Advertisement