diff options
author | Alexander Gavrilov <angavrilov@gmail.com> | 2021-09-20 22:16:41 +0300 |
---|---|---|
committer | Alexander Gavrilov <angavrilov@gmail.com> | 2021-09-20 22:34:09 +0300 |
commit | eed6d6cc132d194efe018996d43a36ebc8d91ad4 (patch) | |
tree | 0817ea53fe929cb2959e219d1076d998d9d22b61 /rigify/ui.py | |
parent | ecf30de46c368ffddad259c125402a38e6093382 (diff) |
Rigify: support generating mirrored linked duplicate widgets.
After the custom shape scale property was split into an XYZ vector,
it is possible to generate truly mirrored widgets using the same
mesh for the left and right side. The widgets Rigify generates are
originally symmetrical, but in practice they usually need to be
tweaked to fit the character better, and proper mirroring matters.
This commit implements widget mirroring and enables it by default.
When reusing widgets left from a previous generation the code tries
to detect whether they were actually originally mirrored by checking
object scale to avoid flipping in pre-existing rigs.
As an aside, reusing pre-existing widgets is made more robust
to random name changes by building a table via scanning the old
generated rig before overwriting it.
Diffstat (limited to 'rigify/ui.py')
-rw-r--r-- | rigify/ui.py | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/rigify/ui.py b/rigify/ui.py index c9592677..c801ac25 100644 --- a/rigify/ui.py +++ b/rigify/ui.py @@ -177,6 +177,7 @@ class DATA_PT_rigify_buttons(bpy.types.Panel): if armature_id_store.rigify_generate_mode == 'new': row.enabled = False + col.prop(armature_id_store, "rigify_mirror_widgets") col.prop(armature_id_store, "rigify_finalize_script", text="Run Script") elif obj.mode == 'EDIT': |