My animations are too robotic, how do I make them more realistic and lifelike?

I’ve been animating a bit more in the last months, and can make ok animations for my Blender movies at this day. I animate by positioning all bones at once on a keyframe, usually inserting keys every 10-15 frames, without using the f-curve editor.

The issue is that no matter what I do, I can’t obtain realistic movement for my characters. They’re still too robotic, unnatural, and it’s visible they’re animations (which a good movie doesn’t show). Sometimes I can improve by adding extra keyframes in between, but that usually doesn’t help. Even if I do more effort to fine-tune the bones at each frame (which becomes too stressful for long scenes) I can’t get movement to be natural.

Does Blender have a tool that can refine existing animations and make them more lifelike? I’d prefer one that doesn’t add extra keyframes. I looked at the f-curve editor, but even if it might help it’s still a ton of work to do for each keyframe. Maybe an f-curve modifier or some simple addon can do this.

Other than that, I’d like to know how other artists work around this in general, and get realistic animations without the effort of tweaking a dozen things each keyframe. Also note I learned animating on my own… so if there’s a tutorial on how to get the best movement, I’d like to see that too. But I imagine there’s no big trick on positioning the bones each keyframe.

no, no one tool, or even a dozen of Blender’s tools, will necessarily mean more realistic animation. :frowning: you will probably have to tweak a dozen or more bones per keyframe, assuming your rig has good controls. the most important thing is to learn about timing, weight, and inertia (which many animators like to call secondary motion, though ive never understood why - just using the word inertia makes so much more practical sense). secondary to that, you should watch the tutorials at blip.tv - http://blip.tv/blendergroupie the “character animation in Blender” videos are really informative. try to do what richard williams suggests, and refine the animation in passes - block out your key frames (not necessarily meaning “keyframes” as we understand it in CG), then go back through and rough in your extremes (foot contacts in a walk, points where arms are farthest apart, etc.), then go back and put in your breakdowns or passing positions between extremes, then refine the breakdowns by adding more secondary motion, like clothes and fat and the flicking about of fingers and wrists and such.

also realize that you’ll HAVE to resort to the f-curve editor occasionally, if even just to change a handle type to automatic or vector or something. i set the default handle types for the curves to auto clamped - that way, by default i don’t get the craziness of prior keys’ bezier curve handles twisting about when adding new keys, but i get the ease in / ease out of a bezier curve. and i can always go back and select a few handles and convert them to the “automatic” type.

Thanks, I shall look at those videos. I already account inertia and the other factors when doing my animations, but even so I can’t fix the fake movement. Long animations are stressful to work on, and tweaking a lot of things would make it too hard to continue, which is why I’m looking for something automated.

As for curves, I already converted some to vector (for constant walking). Maybe converting all animation curves to another type might improve it. I’m also wondering what will happen if I add a noise curve modifier to all my bones, at a low intensity. Could help with making the body have a natural shake constantly, though it might look very wrong and even more unnatural on the other hand.

You will not find a way to automate good animation. Period. It is a hands on, eyes on, mind at full-attention process, that no algorithm or plug-in can match. If what ohsnapitsjoel said sounds like too much work, find another hobby.

If, on the other hand, you are willing to work hard and take the time to learn what it takes to make your animations more “lifelike,” then begin by not having all your keyframes land on the same frame. That is what causes the robotic look, everything starting and stopping at the same time. Life is much more messy. Motion is initiated by one part of the body, others follow, then some stop, others stop later, some overshoot the end mark a bit and have to recover – it’s not at all formulaic and requires finessing basically every key you make to some degree or another. Editing F-curves is essential to good animation flow, so you need to learn how to do that effectively.

You mention a number of thing that “might help,” but truthfully if you do not know what these tools do, what they are intended to do, you’re just wasting time with useless experiments. If you don’t understand how and why F-curves work, and how they affect motion, how can putzing around with things that modify the F-curves be at all useful?

A move such as a basic walk cycle is much much more than arms & legs swinging, it’s also weight shifts, syncopation of motion, understanding how basic anatomy functions, what kind of character is walking – so much more than just making a model’s parts move. Automation is for robots. Living characters need a living, active mind behind them.

It’s all in the timing and spacing. From watching your example animations what I noticed most was weak key poses. Think of what your character is thinking, what emotions he/it is having. Now freeze frame on 1 still, can you see the action and emotion of the character? If not, it’s time to rethink that pose. Animation is 80% planning at least, if you don’t know what you are doing from the beginning it will just become worse and worse the more you get done. I suggest posting some WIP pieces on here and let us help you. Try other animation forums as well, not blender specific.

Yeah… good thinking on that. I don’t usually pose characters by emotion or thinking. Rather by “(s)he is walking, so bring one arm in front of the other and one leg behind the other, and hopefully if I rotate a few more bones it will look good this time”. I usually add expressions with the face and eyes afterwards.

I can’t post a WIP of my latest animation, but maybe I will when I make smaller ones that aren’t as complex. Don’t think I need to ask on other forums also (the info here was helpful), especially since I don’t use or plan to use anything other than Blender, nor have before in this domain.

Setting a rotation key for all your bones at a certain frame is OK to start with, but that is not the whole of it, only the beginning. That’s what you do with key poses, those that define a particular moment in the action that is the point to which previous motion flows and away from which following motions flow, on into the next key pose. But the way all the different parts get from key pose to key pose is what makes lifelike animation.

Here’s an analogy: key poses are like photos in an album. They can tell a story of an entire life, but not the entire story if that life. In between all the moments in pictures are many more moments where things happen in a much less linear fashion than the photos might imply, just like life.

Example – a standing jump. Basic key poses – 1) standing, 2) crouching, 3)extension, 4) rising, 5) peak, 6) falling 7) landing, 8) shock absorption, 9) recovery, 10) standing again.

From 1->2: hips get lower, arms swing back & maybe out, fully extended, upperbody tilts forward at the waist, knees flex, center of gravity shifts to keep everything in balance, and none of this happens at the same instant, it flows.

2->3: Arms swing up, legs push body up and stretches fully out, head goes back, spine arches backward, toes point downward.

3->4: Lower body starts forward swing at hips to set up landing, arms fall back to waist level, head levels out and spots landing point

4->5: legs draw up under body to gain peak height, feet set up for landing by ankle flexing back to horizontal or past, arms push down and extend, maybe with hands also pushing, head thrust forward some, hips swing legs/feet farther forward

5->6: legs stretch out to catch the fall, arms now behind torso, less extended, head comes down some, body now leaning “backward” in profile

6->7: legs flex to absorb shock of landing, arms swing forward to pull center of gravity over feet, body pitches forward at waist (inertia), head comes up from spotting the landing

7->8: Knees flex deep as weight of body pushes down, center of gravity moves forward a little past balance and arms swing back some to compensate, shoulders drop down due to inertia of upper body mass, legs start to push back up, center of gravity slides back over the feet, spine starts to straighten

8->9: Legs push back to standing position, spine straightens out, arms relax at sides, head levels out, center of gravity slides back past feet a bit as balance is restored, shoulders back up to normal resting position.

9->10: Center of gravity back to normal, body relaxes into standing idle pose.

And this is really only about half the detail the action needs. Many of the described motions are nearly but not exactly simultaneous, some must follow one another, some need to be only a frame separated in time to look right. In between all the key poses are lots and lots of interesting and critical motions that make the key poses work as part of a flow of action from start to finish. And this brief breakdown does not take into account such fine points as acceleration, or making the moves fit the character – is he/she fat, skinny, old, a kid, an athlete, a slob, a dancer, a klutz? That’s why there is no automated solution – only the animator can control these aspects of the motion.

Most of those things I already do, but at basic level. I always add basic limb swinging, flexing, preparations for a move (like getting into position before you start walking) and intermediary motions the way they feel right. But maybe it takes more skill and time to add them to such a good level of detail, even if I thought this is more simple.

Anyway, I did disregard some of the in-depth details mentioned, and went by the idea that “if it walks it has a walking animation, that’s it”. I’ll try to keep this in mind from now on.

This is true but only up to a certain point. Now you’re dissatisfied with the character of your animations, not just the gross movements themselves, and that’s where all the tweaking and finessing of details is most important. It’s the means of building character animations instead of just movements.

I highlighted your problems in bold.
Chipmasque and others have given you plenty to go on. The advice I give you is this: don’t shy away from an opportunity to learn a new skill just because it takes effort.

One of the big advantages of using the f-curve editor is that it allows you to reduce the number of keyframes that you’re setting in the 3D view. In the pic below, notice how you can achieve the same curve with fewer keyframes by adjusting the handle of the first keyframe. This will help give you smoother motions.


As others have said, giving a sense of weight and inertia goes a long way toward realistic animation. When you lift one foot, you weight shifts toward the foot that’s still on the ground. And we tend to walk with our feet near a center line so that our weight doesn’t need to shift so far. Seen from the front, your person’s legs should taper a bit toward the center line, rather than hanging straight down as is often done.

People tend to animate just the legs and arms, but the hips and shoulders are rotating throughout the walk cycle. Back in 1997, this article by George Maestri in Digital Video magazine was a big help to me. Be sure to check out the two links near the top of the page.
http://www.siggraph.org/education/materials/HyperGraph/animation/character_animation/walking/learning_to_walk.htm

Steve S

Good example, Steve S. The other benefit to learning how to use F-curves is motion shaping:


The standard F-curve has bezier handles that create a smooth entry and exit from a keyframe with (usually) an even ease-in/ease-out – the handles are flat. By adjusting them you can modulate the curve and thus the motion with great finesse. This curve shows a slow start (shallow slope at first), rapid acceleration (slope gets steep very fast) to a peak that actually overshoots the keyframe point before recovering (a common way of introducing inertia), then overshoots the rest point a bit before settling into the rest position (inertia again). And the F-curve tools provide a for a much greater range of adjustment than this. But it isn’t automated, it’s completely under the animator’s control, which is a good thing.

How can this be useful? Well, for example, a standard walk cycle can be converted into a very feminine strut with no more than F-curve adjustment – it can bring character to your character animations.

EDIT: Here’s a freebie that might help by example: http://www.pasteall.org/blend/13917

This is just a walk cycle done with one of the early Sintel rigs and animation proxy. By using subtle shifts in the timing of certain parts of the cycle, I was able to turn a neutral, ho-hum walk stride into a graceful and unmistakably feminine strut (some adjustments to the figure’s posture helped that as well).

I went in and used the F-curve handles to tweak one channel of the animation, the RotZ of the Pelvis bone, that contributes to the femme swing to the hips. The curve modulation makes the hips swing quite snappily and brings a certain emphasis to that motion. Go into the Graph editor, select all the keys for this channel and use V-KEY>Auto Clamped to flatten out the handles and see how it affects the motion – it becomes more fluid, loses the “snappy” aspect and is more sultry in character. One F-curve adjustment and the motion expresses a very different attitude!

If you then scale the RotZ F-curve in Y in the Graph Editor, the hip swing gets very pronounced – maybe that girl’s sellin’ somethin’? :wink: Again, one F-curve tweak and the character changes her character.

FWIW, I never have that overshoot in my curves. I always key my extremes (an extreme is pretty much the definition of a keyframe) so that I have control over them.
Also, in case we’re overstating the use of the f-curve editor, a lot of the character in animation is achieved at the blocking stage, before you start polishing curves. Good strong poses are essential to good animation. If the character and weight isn’t there in the blocking, no amount of polishing curves will bring it back. Your animation will always look generic and slightly weightless.

Not necessarily. In fact I often find it easier to enhance the sense of weight with f-curves. The curves give you a visual representation that you don’t get when you’re only looking at an armature.

For example, one of the most common mistakes I see people make is that they don’t let the hips continue downward after the lead foot hits the ground, causing the knee to flex and giving a sense of mass. This is really easy to correct using f-curves. Just go to the curve controlling the up/down motion of the hips, select the control points at the bottom of the sine wave, and shift their position to get the desired effect. You can even do this in real time as the animation is playing in another window and you’ll get immediate feedback. It’s much easier this way than trying to keyframe the armature in the 3D view.

Steve S

I think the net effect of editing curves or editing keys is much the same, and is more a stylistic workflow decision than anything else. I don’t find any difficulty using my methods to generate a sense of mass and weight. I also try to block the action as fully as possible, but find, as Steve mentions, that there are places where small adjustments need be made to get the weight working better, and improve some small aspect of the motion’s flow. I find it more effective to reshape that curve than to move a key in time and adjust its value – I “read” the curves fairly well by now. But the overall result is that a new sequences of values for the channel has been created to enhance the initial motion in some way, and that can be done in a number of ways.

Always use some sort of reference to begin with and be perceptive as possible. Remember that movement is expressive. When you construct the poses in your base keys consider the tude and mood of the character. Even a little over the top can have a good result. It adds a +1 to the fun and makes all the adjustments seem less tedious. My first were stiff, lifeless and not very fun to produce, but treating your base keys with the same attention you would give a still makes a world of difference.

… or you follow the tried and true method of blocking out your walk as contact>down extreme>passing>up extrreme
Depends on whether you favour straight ahead or pose to pose.

If you work in a big production and have to deal with feedback from your director it’s important to block out ideas in a way that’s easily editable later. This is why many feature animators favour the pose to pose method. Getting straight into the splines can mean having to undo a bunch of work later when you get feedback.

So I guess I was being too extreme in saying you’ll never get the weight back, but it’s definitely faster and more flexible if you can get your blocking right before going into polish.

Is mine running animation too robotic eighter?