2.79 Rigify. Horse leg x-crossed bug.


Every time when I try to rig a horse with RIGIFY in blender 2.79 I got this X-cross issue.
Does anybody really know how to use it?
Is this a bug or a feature?
There is two target pole bones hidden.
Thank you.

Okay then. I need to realize how to commit a bug but I never did it before.

Hi Vitaliy.

Had the same issue today. But worked it out.

Rigify takes any bend in the knee as the direction of flex. So when you set up the meta-rig, you have to make sure
the ‘knee’ joint in the middle of the leg is forward of the foot and the shoulder slightly - so it is slightly bent in the
natural direction. If (as in my case) you fit the meta rig to a leg that bends inwards (viewed from the front), then
rigify makes the knee bend as in your example.

While playing with this horse rig some more, I did come across what looked like some bad parenting around the skull. The eyes
and nostrils in the meta rig are parented to the left ear !? …makes for some interesting expressions :slight_smile:

The ‘obvious’ fix was to parent all four to the top of the spine. For the record, the changes I came up with are applied as
below to the 0.5 horse.py found in Blender\2.79\scripts\addons\rigify\metarigs\Animals. Please note, I’m not a python expert,
but I did test these changes and they seem sound. If you try them, be sure to keep a copy of the original (but change the
suffix if you leave it in the same folder).

===================================================
593c593
< bone.parent = arm.edit_bones[bones[‘ear.L’]]

> bone.parent = arm.edit_bones[bones[‘spine.013’]]
600c600
< bone.parent = arm.edit_bones[bones[‘ear.L’]]

> bone.parent = arm.edit_bones[bones[‘spine.013’]]
607c607
< bone.parent = arm.edit_bones[bones[‘ear.L’]]

> bone.parent = arm.edit_bones[bones[‘spine.013’]]
614c614
< bone.parent = arm.edit_bones[bones[‘ear.L’]]

> bone.parent = arm.edit_bones[bones[‘spine.013’]]

Hi, I just noticed the mentioned bug with the eyes parenting. It’s still present in latest release (2.79b) and there is a bug report open. I’ve made the here proposed changes to horse.py and it works as it should, or at least have not found any relational problem.