starting from the papasmurf armature baker script I made this one :
if you want to test.
it’s armature baking only, I use it for a project I have with the BGE.
here are the working features :
. can create/update an armature from someof the bone of another one : there’s a bone filter : (deformer, layers, selected, unselected, etc)
-> for the BGE it’s handy since you can extract only the ‘flesh’ bones (deform on bones for example) from the source rig, and not the ‘controler’ bones (deform off).
. can bake some bone of an action in a new action (with same filter way)
. if parenting differs between the armatures, it will key the loc channels, so animation should be ok. ( I have to check the script about that, I don’t remember exactly what I made about parenting cases )
. can update an action. only update the existing bones of the action, only update the existing ipo curves of the existing bone (or not)
-> so when the target action has been created, it acts as a filter and won’t create new channels and new curves in these channel
. can define a key step and/or can key at the same frame than the source action
. can define a frame interval.
. can define a starting frame in the target action.
-> so it will only update a part of the action.
the ‘filter’ and the ‘update existing bones only’ things allow me, starting from a complete rig with constraints everywhere and a main action, to generate a BGE armature (almost flesh only -> faster framerate), and several baked actions starting from the main one. then I can mix in the BGE (as a kind of NLA) thanks to action actuators in property mode
I’m a busy right now, so I have not documented it yet and I’d like to add a load/save bake profile to it. but I made it one month ago and would like to share ideas with you.
quick steps :
. copy in the script dir.
. run it from script/animation/dead ringers
create a new armature from another one
select a source armature in the Armatures source dropdown menu
select <new> in the Armatures target dropdown menu
click the ‘All Bones’ button to filter the bones
bake the constraint of an action
you can create a new arm and bake an action once in a row, but here we only bake the action.
select <only bake> in the Armatures target dropdown menu
clic ‘bake constraints’
select source and target action
select keying options. ‘as in source’=on and steps=0 will key the source as in the source action. else it will key according to steps.
Curves to key allows to key only some of the curves of channels. (in order you can mix animations in the BGE, with different action actuators)
there’s also a filter.
hope this can help