Multiple Armatures in Blender

I am probably just being stupid, but is there a way to export a blender model that has multiple armatures used in its animations?

Yes!, via the OgreXML exporter :slight_smile:

How exactly is that done?

Well, in blender with having the OgreXml exporter installed (blender 2.49) you can choose to export the model via the export script. There is also a facility within jMP to install this OgreXml plugin as-well via: Tools > OgreXML > Install blender plugin. You will just need to install it to the installed path of the scripts dir depending on how you choose to install blender.



Then in the exporter choose: File > Export > Ogre Meshes, and try with these settings:



Skeleton: select the key frames and names for the animations.

Export Materials: name this the same as the Mesh ( ie: Mesh.material ) assuming the objects name is Mesh.



Set the export directory of your choosing, usually good to make a new export dir per model export testing until you get the results you like.



choose Flips up Y axis, and Skeleton name follows mesh.



Then click export and see how it turns out :slight_smile:



You may need the preferences section only if your model utilizes normal mapping.



Hope this helps, and good luck!

I know how to do it normally, but when I add more than one armature, the animation settings section of the blender ogre exporter is blank, without any options.

see This topic I’ve been able to export animations via the exporter.



[edit] You might also need to click the add button in the exporter, for key frame animations.

Dont join the objects and then export all as separate xml files plus a scene file, then use the ogrexml scene importer to load them. If it needs to be one object, just combine the armatures via one root bone (even if they dont move each other).

Ahh normen has all the answers :slight_smile: my apologies @symbols, I miss-interpreted your immediate needs :slight_smile: well hopefully the info will help others with a single mesh animation :slight_smile:

I was making a person, with separate armatures for arms, legs, etc. I originally had only one armature on the leg to move as a test of exporting and whatnot. It said I need to assign vertexes to bones, so I added in more armatures. Then I tried to export that, and the animation options disappeared. I just added in blank animations for all the other armatures where they don’t move, and the animation section came back, but now it still complains that there are vertexes without bone assignment, which I don’t think there is.

It needs to be one armature and all vertexes need to be assigned, also check that the vertex groups that are generated match the names of the bones, some of blenders tools to generate the groups don’t do that properly afaik.

Ok, I know the names are right, but how can I make it just one armature? I already have 5, can they just be connected or something?

Try adding bone weight’s for each armature: this link



[edit] bone weight is crucial for proper deformation on verticies for proper bone influence.

From what I read in the script, the exporter only uses the last armature modifier in the stack or the parented armature of a mesh.

So i guess multiple armature export is not supported


TODO: Facade for Blender objects

def GetArmatureObject(bObject):

“”“Returns Blender armature object of this Blender object or None.



Armatures are either parented or listed in the modifier stack of the object to deform.

“””

bArmatureObject = None

if (bObject.getType() == “Mesh”):

parented armatures get preferred

bParentObject = bObject.getParent()

if (bParentObject and (bParentObject.getType() == “Armature”)):

bArmatureObject = bParentObject

else:

check modifier stack, use last armature modifier

for modifier in bObject.modifiers:

if ((modifier.type == Blender.Modifier.Types.ARMATURE)

and modifier[Blender.Modifier.Settings.VGROUPS]):

bArmatureObject = modifier[Blender.Modifier.Settings.OBJECT]

return bArmatureObject





I guess you should somehow merge your armatures, or maybe switch the modifiers in the stack and export multiple files.

Just merge them via one root bone :roll:

Ok so it works if all the bones are under one armature, guess there isn’t a way to have multiple armatures.

Its not a problems since the logic of “animations” is not attached to the logic of armatures anyway in blender.