Copy animations to an existing armature

Animation tools, character animation, non linear animation

Moderators: jesterKing, stiv

Post Reply
Posts: 0
Joined: Tue Mar 05, 2013 12:17 am

Copy animations to an existing armature

Post by beamrider1 »

Objective: import a figure from MakeHuman, animate it with .bvh files, add other details in Blender (2.65) , and export it to the Unreal Engine 3 UDK.

Accomplished: Have a MakeHuman character (FirstcharacterTest_3) in Blender with a simple armature that I can import into UDK. I can manually animate the character and everything works as expected. I have imported an unrelated bvh file with a run action (runningRenamed) into Blender and it runs as expected. The bone names that move in the bvh file are the same there and in the character armature, but the character armature contains some additional bones (e.g. complete hands, jaw, etc.).

Current Status: I can append the running Action from the bvh Blender file into the character Blender file and can see the action in the Action Editor and Timeline screens. The append operation generates the following console entries, which don't appear to show any errors:
undo push Link/Append from Library
undo push runningRenamed
recalcob FirstcharacterTest_3
recalcdata Firstcharactertest _3
recalcob Firstcharactertest_3Mesh
recalcdata Firstcharactertest_3Meah
I can run the animation and see the current frame line move in the timeline and the action editor but the character's armature does not move. The Blender 2.6 doc indicates that the armatures need to be the same, and I know they are not.

Question: Is there any way I can link the action I have imported to the bones that are correctly named in the action? The Action Editor has lots of options in its menus but I don't know Blender well enough to know if any of them would help.

Thanks in advance for any suggestions.

Posts: 0
Joined: Sun Apr 05, 2009 7:42 pm
Location: Germany

Post by CoDEmanX »

i don't know if blender has a retargetting tool that works for your task and what could be done on import to make this work. But maybe this is fixable in a different way.

First off, make sure the model has an armature modifier and the object field is set to the armature object. Vertex groups checkbox should be ticked. The model also has to have vertex groups with the names of the bones.

If the imported animation uses bone names different from your armature, that is of course a problem. If a data path isn't valid, it's possible to fix it manually in the sidebar of the graph editor:


Only change the part inside of ['...'] to the correct bone name and hit return!
I'm sitting, waiting, wishing, building Blender in superstition...

Posts: 0
Joined: Tue Mar 05, 2013 12:17 am

Post by beamrider1 »

After a couple of months of work on and off, I've gotten this down to a single problem I cannot figure out. Still Blender 2.6 under Windows 7 32-bit.

I'm appending an action of just the root bone (b_Root) of a running Blender armature that works correctly into an armature with the same root bone name in a Blender figure that also works correctly but without any actions yet. The action appears in the figure's Blend file exactly as it appears in the source file from which it was appended. The problem is that while the figure will animate the changes in root bone location, it does not animate the bone rotations.

If I select any of the location f-curves in the graph editor and move them up and down I see the expected location changes in both the source armature and the figure that appended the action. However, selecting any of the rotation f-curves and moving them up and down only produces the expected rotations in the source armature--the figure is ignoring the rotation curves. When executing the action the figure bobs up and down as a running figure would, but none of the root bone rotations occur.

I'll add the additional bones once I can get the root bone to work, but at this point I'm stuck on just animating the root bone. All files in this test are blender 2.6 files and I'm not getting any console error messages.

The really aggravating part is that I once got the whole armature to work with an appended action but the size and positions of the bones were different. Once I fixed that problem I realized I had deleted the animated figure's file and haven't been able to figure out how to do it again, but it has worked once! :?

I had already implemented all of CoDEmanX's suggestions, but I'd appreciate any additional suggestions or instructions.

For example, is this something I should submit as a bug?

Thanks in advance for any feedback.

Post Reply