[Bf-extensions-cvs] [dd723151] master: Rigify: implement FK controls for basic_spine with an option to disable.
Alexander Gavrilov
noreply at git.blender.org
Tue Oct 15 16:05:12 CEST 2019
Commit: dd723151763d8ee3b5c2c94f6c4b5c1ac43b8b59
Author: Alexander Gavrilov
Date: Tue Oct 15 16:50:44 2019 +0300
Branches: master
https://developer.blender.org/rBAdd723151763d8ee3b5c2c94f6c4b5c1ac43b8b59
Rigify: implement FK controls for basic_spine with an option to disable.
All metarigs are updated to use split spine components, as super_spine
is deprecated and won't generate FK controls for backward compatibility.
===================================================================
M rigify/metarigs/Animals/bird.py
M rigify/metarigs/Animals/cat.py
M rigify/metarigs/Animals/horse.py
M rigify/metarigs/Animals/shark.py
M rigify/metarigs/Animals/wolf.py
M rigify/metarigs/Basic/basic_human.py
M rigify/metarigs/Basic/basic_quadruped.py
M rigify/metarigs/human.py
M rigify/rigs/spines/basic_spine.py
M rigify/rigs/spines/super_spine.py
===================================================================
diff --git a/rigify/metarigs/Animals/bird.py b/rigify/metarigs/Animals/bird.py
index a3331c29..5b4bdace 100644
--- a/rigify/metarigs/Animals/bird.py
+++ b/rigify/metarigs/Animals/bird.py
@@ -165,47 +165,19 @@ def create(obj):
bones = {}
- bone = arm.edit_bones.new('spine')
- bone.head[:] = -0.0000, 0.1371, 0.0894
- bone.tail[:] = -0.0000, 0.1039, 0.0907
+ bone = arm.edit_bones.new('spine.003')
+ bone.head[:] = -0.0000, 0.0451, 0.0845
+ bone.tail[:] = -0.0000, 0.0192, 0.0888
bone.roll = 0.0000
bone.use_connect = False
- bones['spine'] = bone.name
- bone = arm.edit_bones.new('spine.001')
- bone.head[:] = -0.0000, 0.1039, 0.0907
+ bones['spine.003'] = bone.name
+ bone = arm.edit_bones.new('spine.002')
+ bone.head[:] = -0.0000, 0.0451, 0.0845
bone.tail[:] = -0.0000, 0.0757, 0.0880
bone.roll = 0.0000
- bone.use_connect = True
- bone.parent = arm.edit_bones[bones['spine']]
- bones['spine.001'] = bone.name
- bone = arm.edit_bones.new('t_feather.L')
- bone.head[:] = 0.0112, 0.1017, 0.0907
- bone.tail[:] = 0.0167, 0.1345, 0.0894
- bone.roll = 0.0032
- bone.use_connect = False
- bone.parent = arm.edit_bones[bones['spine']]
- bones['t_feather.L'] = bone.name
- bone = arm.edit_bones.new('t_feather.R')
- bone.head[:] = -0.0112, 0.1017, 0.0907
- bone.tail[:] = -0.0167, 0.1345, 0.0894
- bone.roll = -0.0032
bone.use_connect = False
- bone.parent = arm.edit_bones[bones['spine']]
- bones['t_feather.R'] = bone.name
- bone = arm.edit_bones.new('spine.002')
- bone.head[:] = -0.0000, 0.0757, 0.0880
- bone.tail[:] = -0.0000, 0.0451, 0.0845
- bone.roll = 0.0000
- bone.use_connect = True
- bone.parent = arm.edit_bones[bones['spine.001']]
+ bone.parent = arm.edit_bones[bones['spine.003']]
bones['spine.002'] = bone.name
- bone = arm.edit_bones.new('spine.003')
- bone.head[:] = -0.0000, 0.0451, 0.0845
- bone.tail[:] = -0.0000, 0.0192, 0.0888
- bone.roll = 0.0000
- bone.use_connect = True
- bone.parent = arm.edit_bones[bones['spine.002']]
- bones['spine.003'] = bone.name
bone = arm.edit_bones.new('spine.004')
bone.head[:] = -0.0000, 0.0192, 0.0888
bone.tail[:] = -0.0000, -0.0106, 0.0979
@@ -213,6 +185,13 @@ def create(obj):
bone.use_connect = True
bone.parent = arm.edit_bones[bones['spine.003']]
bones['spine.004'] = bone.name
+ bone = arm.edit_bones.new('spine.001')
+ bone.head[:] = -0.0000, 0.0757, 0.0880
+ bone.tail[:] = -0.0000, 0.1039, 0.0907
+ bone.roll = 0.0000
+ bone.use_connect = True
+ bone.parent = arm.edit_bones[bones['spine.002']]
+ bones['spine.001'] = bone.name
bone = arm.edit_bones.new('spine.005')
bone.head[:] = -0.0000, -0.0106, 0.0979
bone.tail[:] = -0.0000, -0.0298, 0.1158
@@ -248,6 +227,13 @@ def create(obj):
bone.use_connect = False
bone.parent = arm.edit_bones[bones['spine.004']]
bones['thigh.R'] = bone.name
+ bone = arm.edit_bones.new('spine')
+ bone.head[:] = -0.0000, 0.1039, 0.0907
+ bone.tail[:] = -0.0000, 0.1371, 0.0894
+ bone.roll = 0.0000
+ bone.use_connect = True
+ bone.parent = arm.edit_bones[bones['spine.001']]
+ bones['spine'] = bone.name
bone = arm.edit_bones.new('shoulder.L')
bone.head[:] = 0.0014, -0.0217, 0.0893
bone.tail[:] = 0.0076, -0.0020, 0.1179
@@ -283,6 +269,20 @@ def create(obj):
bone.use_connect = True
bone.parent = arm.edit_bones[bones['thigh.R']]
bones['shin.R'] = bone.name
+ bone = arm.edit_bones.new('t_feather.L')
+ bone.head[:] = 0.0112, 0.1017, 0.0907
+ bone.tail[:] = 0.0167, 0.1345, 0.0894
+ bone.roll = 0.0032
+ bone.use_connect = False
+ bone.parent = arm.edit_bones[bones['spine']]
+ bones['t_feather.L'] = bone.name
+ bone = arm.edit_bones.new('t_feather.R')
+ bone.head[:] = -0.0112, 0.1017, 0.0907
+ bone.tail[:] = -0.0167, 0.1345, 0.0894
+ bone.roll = -0.0032
+ bone.use_connect = False
+ bone.parent = arm.edit_bones[bones['spine']]
+ bones['t_feather.R'] = bone.name
bone = arm.edit_bones.new('Wing.L')
bone.head[:] = 0.0089, 0.0141, 0.1157
bone.tail[:] = 0.0485, 0.0107, 0.1163
@@ -294,7 +294,7 @@ def create(obj):
bone.head[:] = -0.0000, -0.0417, 0.1348
bone.tail[:] = -0.0000, -0.0458, 0.1429
bone.roll = 0.0001
- bone.use_connect = True
+ bone.use_connect = False
bone.parent = arm.edit_bones[bones['spine.006']]
bones['neck.001'] = bone.name
bone = arm.edit_bones.new('Wing.R')
@@ -691,8 +691,8 @@ def create(obj):
bones['tongue.003.L'] = bone.name
bpy.ops.object.mode_set(mode='OBJECT')
- pbone = obj.pose.bones[bones['spine']]
- pbone.rigify_type = 'spines.super_spine'
+ pbone = obj.pose.bones[bones['spine.003']]
+ pbone.rigify_type = 'spines.basic_spine'
pbone.lock_location = (False, False, False)
pbone.lock_rotation = (False, False, False)
pbone.lock_rotation_w = False
@@ -700,70 +700,38 @@ def create(obj):
pbone.rotation_mode = 'QUATERNION'
pbone.bone.layers = [False, False, False, True, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False]
try:
- pbone.rigify_parameters.use_tail = True
- except AttributeError:
- pass
- try:
- pbone.rigify_parameters.tail_pos = 3
+ pbone.rigify_parameters.pivot_pos = 1
except AttributeError:
pass
try:
- pbone.rigify_parameters.pivot_pos = 4
- except AttributeError:
- pass
- try:
- pbone.rigify_parameters.neck_pos = 8
- except AttributeError:
- pass
- try:
- pbone.rigify_parameters.copy_rotation_axes = [True, False, True]
+ pbone.rigify_parameters.tweak_layers = [False, False, False, False, True, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False]
except AttributeError:
pass
try:
- pbone.rigify_parameters.tweak_layers = [False, False, False, False, True, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False]
+ pbone.rigify_parameters.fk_layers = [False, False, False, False, True, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False]
except AttributeError:
pass
- pbone = obj.pose.bones[bones['spine.001']]
- pbone.rigify_type = ''
+ pbone = obj.pose.bones[bones['spine.002']]
+ pbone.rigify_type = 'spines.basic_tail'
pbone.lock_location = (False, False, False)
pbone.lock_rotation = (False, False, False)
pbone.lock_rotation_w = False
pbone.lock_scale = (False, False, False)
pbone.rotation_mode = 'QUATERNION'
pbone.bone.layers = [False, False, False, True, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False]
- pbone = obj.pose.bones[bones['t_feather.L']]
- pbone.rigify_type = 'basic.super_copy'
- pbone.lock_location = (False, False, False)
- pbone.lock_rotation = (False, False, False)
- pbone.lock_rotation_w = False
- pbone.lock_scale = (False, False, False)
- pbone.rotation_mode = 'QUATERNION'
- pbone.bone.layers = [False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, True, False, False, False, False, False, False, False]
try:
- pbone.rigify_parameters.make_widget = False
+ pbone.rigify_parameters.copy_rotation_axes = [True, False, True]
except AttributeError:
pass
- pbone = obj.pose.bones[bones['t_feather.R']]
- pbone.rigify_type = 'basic.super_copy'
- pbone.lock_location = (False, False, False)
- pbone.lock_rotation = (False, False, False)
- pbone.lock_rotation_w = False
- pbone.lock_scale = (False, False, False)
- pbone.rotation_mode = 'QUATERNION'
- pbone.bone.layers = [False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, True, False, False, False, False, False, False, False]
try:
- pbone.rigify_parameters.make_widget = False
+ pbone.rigify_parameters.tweak_layers = [False, False, False, False, True, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False]
except AttributeError:
pass
- pbone = obj.pose.bones[bones['spine.002']]
- pbone.rigify_type = ''
- pbone.lock_location = (False, False, False)
- pbone.lock_rotation = (False, False, False)
- pbone.lock_rotation_w = False
- pbone.lock_scale = (False, False, False)
- pbone.rotation_mode = 'QUATERNION'
- pbone.bone.layers = [False, False, False, True, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False]
- pbone = obj.pose.bones[bones['spine.003']]
+ try:
+ pbone.rigify_parameters.connect_chain = True
+ except AttributeError:
+ pass
+ pbone = obj.pose.bones[bones['spine.004']]
pbone.rigify_type = ''
pbone.lock_location = (False, False, False)
pbone.lock_rotation = (False, False, False)
@@ -771,7 +739,7 @@ def create(obj):
pbone.lock_scale = (False, False, False)
pbone.rotation_mode = 'QUATERNION'
pbone.bone.layers = [False, False, False, True, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, Fa
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-extensions-cvs
mailing list