0
$\begingroup$

I tried duplicating one side of my armature and mirroring it to the other side with Shift+D, S, X, -1. It works except that in pose mode, the arm and the leg are not symmetrical to the other side. Is there a way to fix it other than manually replacing them? I really want to keep it clean. The rest position is ok though.

My file is here - https://drive.google.com/file/d/13oPK4rJQuXMJ106jL1chpc0jwh5cdrmY/view?usp=sharing[][1] enter image description here

enter image description here

$\endgroup$
6
  • 1
    $\begingroup$ to mirror an armature, make sure that the bones you want to mirror have the R or L suffixe, for example lowerleg.L or lowerleg_L, then in Edit mode go in the header menu > Armature > Symmetrize, and you'll have your armature correctly symmetrized, and the bones will automatically be called lowerleg.R or lowerleg_R $\endgroup$
    – moonboots
    Sep 8, 2020 at 4:36
  • $\begingroup$ @moonboots when I select my bones and click symmetrize, it doesn't do anything, and all their names en by .R (Bras.R for example) $\endgroup$ Sep 8, 2020 at 10:37
  • $\begingroup$ mmh weird because it works fine for me... $\endgroup$
    – moonboots
    Sep 8, 2020 at 10:40
  • $\begingroup$ Have you tried with my project ? $\endgroup$ Sep 8, 2020 at 12:56
  • $\begingroup$ yes I tired with your armture and it works fine $\endgroup$
    – moonboots
    Sep 8, 2020 at 13:12

2 Answers 2

1
$\begingroup$

Why Symmetrize doesn't work

As explained in Symmetrize — Blender Manual:

Blender needs to know which bones are Left or Right sided. And for this, it uses a naming convention detailed here: Naming — Blender Manual

In short, you need to put variations of left and right. Blender will not recognize anything else, including translations.

A quick fix to it would be to use the Batch Rename tool via ⎈ CtrlF2, set it to Bone, and find/replace and .G by .L for example:

replace bone name

Fixing the IK Chains

IK chains rely heavily on how your bones are set up in the 3D space to determine how they should behave.

Bone rolls

If we enable the Armature's axes display, we can see that your limbs' bones are rolled in all directions, which is misleading for IK chains (and also for many animation tools).

Armature Axes

To fix this, set your viewport in Front view via numpad 1, select the bones, and press Shift N to open the Recalculate Roll menu. It works by orienting the bones' local Z towards whatever option you chose. In this case I picked View Axis to easily align all the bones so that they local +Z point away from the viewport, it's a quick and dirty solution but is often good enough.

Chain angles

Then, we will need to look the angle formed by the bones inside the IK chains, that will determine in which direction the two bones will fold when the start/end points of the chain are brought closer. Don't hesitate to exaggerate the angle a bit, it's better to make it big enough to work than not enough.

move bone at an angle

Pole targets positioning

Then, you have IK pole targets for both your legs and arms. The leg ones are fine, but you place the arm ones in front of the arm. Pole targets should be placed behind the IK chain's angle direction, that's why legs pole target are in front of the knee, and arms pole targets should be behind the elbow:

pole target position

Besides, the pole target's head should ideally align with the IK chain's point that will point towards the target:

alignment

The pole angle setting

Finally, back in pose mode and select your bones that wear the IK constraints: they have a Pole Angle setting. Depending how you setup your rig, the IK chain will point at the wrong direction, but you can use this setting to fix that.

If you followed the above correctly, your arm IK should require a Pole Angle of -90, and your leg 90:

arm pole angle

leg pole angle

Final

After that, since we changed names of some bones, your weights will most likely be non-functional anymore. So you will need to remove the Armature Deform modifier on your mesh object, re-parent it to your armature and redo the weights. But the rig itself will work.

final result

$\endgroup$
0
$\begingroup$

I'm new to blender but I think you can remove on a object like one hand and the select the arm go to modifiers and add a new modifier called "Mirror"maybe it'll work for you. Through mirroring any change you can make in one hand is also applicable to second hand... Thank you!

$\endgroup$
1
  • $\begingroup$ you mean mirroring like when you mirror the mesh when you make it ? If so, i can't find where i can add that to my armature $\endgroup$ Sep 8, 2020 at 10:35

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .