Is Mirror Symmetry available for Blender 2.49

I asked this in the bottom of my last thread, but it may have been over looked – so excuse the repost but…

I am trying to find a way of having the left side of my armature reproduced (and mirrored) on the right side. I have found some threads about this but they seem from 2.42 or before.

According to the catalog: ( there is an Armature Mirror Symmetry script – but it is for Blender 2.45, and the link for it is dead.

I looked in the massive 150 script catalog: External Script Bundles Blender 2.49b, but I see no Armature mirror option there either.

When I look in the ANIMATION script menu that is part of my install, I see envelope symmetry, but not armature symmetry.

Has this disappeared for Blender 2.49? Or am I looking in the wrong place?

Does anyone know the steps for doing this? Or can you point me to a doc.tutorial / script that is for the current Blender release? Thanks!

I forgot to mention… if I am in Edit mode, and I select the ARMATURE, I get an ARMATURE menu. From there, in the SCRIPTS, there is an “armature symmetry” script I can run… but this isn’t what I want.

This script will simply make the left the same as the right by splitting the difference between the two.

So, if R is 100 and L is 50, this script makes both of them 75.

That’s not what I want. (Frankly, I can’t imagine a time I ever want that…)

I have set up all of the bones on the right the way I want them, and I want the left to be the mirror opposite of them. (ie, if R is 100 and L is 50, after run, I want L to be 100).

If that makes sense…?

The Armature Symmetry script is located in the 3D header -> Armature -> Scripts in armature Edit Mode .

Though this will only position your left right bones so they have symmetrical coordinates, so you will have to go through and add the L or R suffix or prefix to one side manually and then use W specials menu -> Auto Name Left-Right script that is available .

It would also help if you finally turned on X-Axis Mirror on the armature … I don’t know how you started building your rig, but having it turned on and using Shift-E to initially extrude from the “spine” of your rig will save you a lot of grief the next time you have to rig …

Edit : If you L/R name the armature and turn on the X-Axis Mirror your bones will automatically mirror each other when manipulated in Edit Mode . If some bones haven’t mirror updated just grab one side and the other side will update .

Well, actually, this armature came from the BVH import script. But I cannot really use the X-Axis mirror. When I turn X-Axis mirror on, and move the left side (ie LeftLeg) it moves the right leg, but also rotates it. I am not sure why, but often moving with X-Axis on does this, which pretty much makes the rig useless. All of the BVH motion creates unnatural and unhuman joints after that happens…

What happens when you tab into Edit Mode ? Or set the armature in it’s rest position ?
Are you saying that the BVH armature isn’t symmetrical from the import ?

If that is the case then you might have a bad import or the import script can’t get the BVH data to generate a proper armature . This actually seems to happen quite often with some BVH files generated with software, i.e. isn’t a real motion capture file .

If that is the case you might have to re-import the data as empties and use them as the targets for an armature you manually make for your mesh if the motion data generally makes sense . You can’t, from what I have seen, alter the armature generated with the import script without screwing up the motion data .

Hmmm… you may be right But that doesn’t make sense to me. If I change the set up in rest mode, I would expect it to still be fine when it goes the first frame of the animation. Whether the armature is made by a script, or by hand, there is nothing mystical about the armature. It should just be posed bones.

If I can change a rig I make by hand and not have it mess up my motion, I don’t see why it would make any difference if the rig is created by a script.

Unless, of course, as you say, the rig is not perfectly symmetrical to begin with. That would explain the strange rotation when X-axis mirror is set.

When I get some time I probably need to look into the Python script for all of this. It seems to me that what I am trying to do should be bread and butter for a Python script to do… I guess no one is applying BVH files this way, or I am sure someone would have run into it by now…

Thanks for the response!

This may be cryptic, but I have found that if you select the left bones, shift-d to duplicate them, click to drop them, scale-x -1 to flip them, g and move them to the right and click. Then use the flip l/r names script, you’re done.

In this thread you’ll find the desired script.
Put the script in the blender’s script directory, after restarting it’ll be available in Script->Add->
How to use: in object mode select your armature, run the script and select desired axis, hit OK. You armature will be mirrored, then in edit mode W->Flip Left $ Right Names
I think you’ll manage what to do :slight_smile:

I am doing a beginner level tutorial Called “BSOD Introduction to character Animation” and I couldn’t get the X-axis mirror function to work. I could see that X-axis mirror was turned on, but extruding the bones for my character’s arm wasn’t producing the mirrored duplicate it was supposed to. After double checking my tutorial several times I decided to search The blender artists forum and see if I could find out what I might be doing wrong. Turns out I Needed to use shift + E to extrude the new bones, instead of just hitting the E key. I must have overlooked the part where the tutorial actually tells you what key command to use when extruding bones you want mirrored. Yes, I feel pretty stupid admitting that, but for me this was becoming a frustrating problem. Now that I know to hit Shift+E of course it’s working perfectly. Not only did I find the answer to my question, but I picked up some interesting info that may be useful later. Thanks everyone who contributed to this post, it was such a big help.