Skip to content

Commit

Permalink
fixed right thumb not parented correctly issue
Browse files Browse the repository at this point in the history
  • Loading branch information
catprisbrey committed Feb 13, 2024
1 parent 2792e6b commit 8ba1dae
Show file tree
Hide file tree
Showing 3 changed files with 147 additions and 67 deletions.
2 changes: 1 addition & 1 deletion __init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -104,7 +104,7 @@ def execute(self, context):


check_and_parent('DEF-hand.R','DEF-forearm.R')
check_and_parent('DEF-thumb.01.R','DEF-hand.L')
check_and_parent('DEF-thumb.01.R','DEF-hand.R')
check_and_parent('DEF-f_index.01.R','DEF-hand.R')
check_and_parent('DEF-f_middle.01.R','DEF-hand.R')
check_and_parent('DEF-f_ring.01.R','DEF-hand.R')
Expand Down
144 changes: 92 additions & 52 deletions metarigs/Godot Human/basic_2_fingers.py
Original file line number Diff line number Diff line change
Expand Up @@ -181,6 +181,20 @@ def assign_bone_collection_refs(params, attr_name, *coll_names):
bone.use_connect = False
bone.parent = arm.edit_bones[bones['spine.003']]
bones['shoulder.R'] = bone.name
bone = arm.edit_bones.new('breast.L')
bone.head = 0.0812, -0.1305, 1.3367
bone.tail = 0.0812, -0.2734, 1.3367
bone.roll = -0.0000
bone.use_connect = False
bone.parent = arm.edit_bones[bones['spine.003']]
bones['breast.L'] = bone.name
bone = arm.edit_bones.new('breast.R')
bone.head = -0.0812, -0.1305, 1.3367
bone.tail = -0.0812, -0.2734, 1.3367
bone.roll = 0.0000
bone.use_connect = False
bone.parent = arm.edit_bones[bones['spine.003']]
bones['breast.R'] = bone.name
bone = arm.edit_bones.new('toe.L')
bone.head = 0.0890, -0.1132, 0.0152
bone.tail = 0.0890, -0.1921, 0.0152
Expand Down Expand Up @@ -279,90 +293,90 @@ def assign_bone_collection_refs(params, attr_name, *coll_names):
bone.use_connect = True
bone.parent = arm.edit_bones[bones['forearm.R']]
bones['hand.R'] = bone.name
bone = arm.edit_bones.new('f_index.01.L')
bone.head = 0.8712, 0.0655, 1.4388
bone.tail = 0.9119, 0.0655, 1.4388
bone.roll = 3.1416
bone.use_connect = False
bone.parent = arm.edit_bones[bones['hand.L']]
bones['f_index.01.L'] = bone.name
bone = arm.edit_bones.new('thumb.01.L')
bone.head = 0.7662, 0.0318, 1.4180
bone.tail = 0.8004, 0.0141, 1.3988
bone.roll = -1.0600
bone.use_connect = False
bone.parent = arm.edit_bones[bones['hand.L']]
bones['thumb.01.L'] = bone.name
bone = arm.edit_bones.new('f_middle.01.L')
bone.head = 0.8620, 0.0668, 1.4412
bone.tail = 0.9043, 0.0688, 1.4412
bone.roll = 3.1416
bone = arm.edit_bones.new('f_index.01.R')
bone.head = -0.8712, 0.0655, 1.4388
bone.tail = -0.9119, 0.0655, 1.4388
bone.roll = -3.1416
bone.use_connect = False
bone.parent = arm.edit_bones[bones['hand.L']]
bones['f_middle.01.L'] = bone.name
bone.parent = arm.edit_bones[bones['hand.R']]
bones['f_index.01.R'] = bone.name
bone = arm.edit_bones.new('thumb.01.R')
bone.head = -0.7662, 0.0318, 1.4180
bone.tail = -0.8004, 0.0141, 1.3988
bone.roll = 1.0600
bone.use_connect = False
bone.parent = arm.edit_bones[bones['hand.R']]
bones['thumb.01.R'] = bone.name
bone = arm.edit_bones.new('f_middle.01.R')
bone.head = -0.8620, 0.0668, 1.4412
bone.tail = -0.9043, 0.0688, 1.4412
bone.roll = -3.1416
bone.use_connect = False
bone.parent = arm.edit_bones[bones['hand.R']]
bones['f_middle.01.R'] = bone.name
bone = arm.edit_bones.new('f_index.02.L')
bone.head = 0.9119, 0.0655, 1.4388
bone.tail = 0.9467, 0.0655, 1.4388
bone.roll = 3.1416
bone.use_connect = True
bone.parent = arm.edit_bones[bones['f_index.01.L']]
bones['f_index.02.L'] = bone.name
bone = arm.edit_bones.new('thumb.02.L')
bone.head = 0.8004, 0.0141, 1.3988
bone.tail = 0.8394, -0.0061, 1.3769
bone.roll = -1.0600
bone.use_connect = True
bone.parent = arm.edit_bones[bones['thumb.01.L']]
bones['thumb.02.L'] = bone.name
bone = arm.edit_bones.new('f_middle.02.L')
bone.head = 0.9043, 0.0688, 1.4412
bone.tail = 0.9382, 0.0703, 1.4412
bone.roll = 3.1416
bone = arm.edit_bones.new('f_index.02.R')
bone.head = -0.9119, 0.0655, 1.4388
bone.tail = -0.9467, 0.0655, 1.4388
bone.roll = -3.1416
bone.use_connect = True
bone.parent = arm.edit_bones[bones['f_middle.01.L']]
bones['f_middle.02.L'] = bone.name
bone.parent = arm.edit_bones[bones['f_index.01.R']]
bones['f_index.02.R'] = bone.name
bone = arm.edit_bones.new('thumb.02.R')
bone.head = -0.8004, 0.0141, 1.3988
bone.tail = -0.8394, -0.0061, 1.3769
bone.roll = 1.0600
bone.use_connect = True
bone.parent = arm.edit_bones[bones['thumb.01.R']]
bones['thumb.02.R'] = bone.name
bone = arm.edit_bones.new('f_middle.02.R')
bone.head = -0.9043, 0.0688, 1.4412
bone.tail = -0.9382, 0.0703, 1.4412
bone.roll = -3.1416
bone = arm.edit_bones.new('f_index.03.L')
bone.head = 0.9467, 0.0655, 1.4388
bone.tail = 0.9768, 0.0655, 1.4388
bone.roll = 3.1416
bone.use_connect = True
bone.parent = arm.edit_bones[bones['f_middle.01.R']]
bones['f_middle.02.R'] = bone.name
bone.parent = arm.edit_bones[bones['f_index.02.L']]
bones['f_index.03.L'] = bone.name
bone = arm.edit_bones.new('thumb.03.L')
bone.head = 0.8394, -0.0061, 1.3769
bone.tail = 0.8719, -0.0229, 1.3587
bone.roll = -1.0600
bone.use_connect = True
bone.parent = arm.edit_bones[bones['thumb.02.L']]
bones['thumb.03.L'] = bone.name
bone = arm.edit_bones.new('f_middle.03.L')
bone.head = 0.9382, 0.0703, 1.4412
bone.tail = 0.9726, 0.0719, 1.4412
bone.roll = 3.1416
bone = arm.edit_bones.new('f_index.03.R')
bone.head = -0.9467, 0.0655, 1.4388
bone.tail = -0.9768, 0.0655, 1.4388
bone.roll = -3.1416
bone.use_connect = True
bone.parent = arm.edit_bones[bones['f_middle.02.L']]
bones['f_middle.03.L'] = bone.name
bone.parent = arm.edit_bones[bones['f_index.02.R']]
bones['f_index.03.R'] = bone.name
bone = arm.edit_bones.new('thumb.03.R')
bone.head = -0.8394, -0.0061, 1.3769
bone.tail = -0.8719, -0.0229, 1.3587
bone.roll = 1.0600
bone.use_connect = True
bone.parent = arm.edit_bones[bones['thumb.02.R']]
bones['thumb.03.R'] = bone.name
bone = arm.edit_bones.new('f_middle.03.R')
bone.head = -0.9382, 0.0703, 1.4412
bone.tail = -0.9726, 0.0719, 1.4412
bone.roll = -3.1416
bone.use_connect = True
bone.parent = arm.edit_bones[bones['f_middle.02.R']]
bones['f_middle.03.R'] = bone.name

bpy.ops.object.mode_set(mode='OBJECT')
pbone = obj.pose.bones[bones['spine']]
Expand Down Expand Up @@ -520,6 +534,22 @@ def assign_bone_collection_refs(params, attr_name, *coll_names):
pbone.rigify_parameters.super_copy_widget_type = 'shoulder'
except AttributeError:
pass
pbone = obj.pose.bones[bones['breast.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 = 'YXZ'
assign_bone_collections(pbone, 'Torso')
pbone = obj.pose.bones[bones['breast.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 = 'YXZ'
assign_bone_collections(pbone, 'Torso')
pbone = obj.pose.bones[bones['toe.L']]
pbone.rigify_type = ''
pbone.lock_location = (False, False, False)
Expand Down Expand Up @@ -644,7 +674,7 @@ def assign_bone_collection_refs(params, attr_name, *coll_names):
pbone.lock_scale = (False, False, False)
pbone.rotation_mode = 'QUATERNION'
assign_bone_collections(pbone, 'Arm.R (IK)')
pbone = obj.pose.bones[bones['thumb.01.L']]
pbone = obj.pose.bones[bones['f_index.01.L']]
pbone.rigify_type = 'limbs.super_finger'
pbone.lock_location = (False, False, False)
pbone.lock_rotation = (False, False, False)
Expand All @@ -657,15 +687,20 @@ def assign_bone_collection_refs(params, attr_name, *coll_names):
except AttributeError:
pass
assign_bone_collection_refs(pbone.rigify_parameters, 'tweak', 'Fingers (Detail)')
pbone = obj.pose.bones[bones['f_middle.01.L']]
pbone.rigify_type = ''
pbone = obj.pose.bones[bones['thumb.01.L']]
pbone.rigify_type = 'limbs.super_finger'
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'
assign_bone_collections(pbone, 'Fingers')
pbone = obj.pose.bones[bones['thumb.01.R']]
try:
pbone.rigify_parameters.ik_local_location = False
except AttributeError:
pass
assign_bone_collection_refs(pbone.rigify_parameters, 'tweak', 'Fingers (Detail)')
pbone = obj.pose.bones[bones['f_index.01.R']]
pbone.rigify_type = 'limbs.super_finger'
pbone.lock_location = (False, False, False)
pbone.lock_rotation = (False, False, False)
Expand All @@ -678,71 +713,76 @@ def assign_bone_collection_refs(params, attr_name, *coll_names):
except AttributeError:
pass
assign_bone_collection_refs(pbone.rigify_parameters, 'tweak', 'Fingers (Detail)')
pbone = obj.pose.bones[bones['f_middle.01.R']]
pbone.rigify_type = ''
pbone = obj.pose.bones[bones['thumb.01.R']]
pbone.rigify_type = 'limbs.super_finger'
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'
assign_bone_collections(pbone, 'Fingers')
pbone = obj.pose.bones[bones['thumb.02.L']]
try:
pbone.rigify_parameters.ik_local_location = False
except AttributeError:
pass
assign_bone_collection_refs(pbone.rigify_parameters, 'tweak', 'Fingers (Detail)')
pbone = obj.pose.bones[bones['f_index.02.L']]
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'
assign_bone_collections(pbone, 'Fingers')
pbone = obj.pose.bones[bones['f_middle.02.L']]
pbone = obj.pose.bones[bones['thumb.02.L']]
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'
assign_bone_collections(pbone, 'Fingers')
pbone = obj.pose.bones[bones['thumb.02.R']]
pbone = obj.pose.bones[bones['f_index.02.R']]
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'
assign_bone_collections(pbone, 'Fingers')
pbone = obj.pose.bones[bones['f_middle.02.R']]
pbone = obj.pose.bones[bones['thumb.02.R']]
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'
assign_bone_collections(pbone, 'Fingers')
pbone = obj.pose.bones[bones['thumb.03.L']]
pbone = obj.pose.bones[bones['f_index.03.L']]
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'
assign_bone_collections(pbone, 'Fingers')
pbone = obj.pose.bones[bones['f_middle.03.L']]
pbone = obj.pose.bones[bones['thumb.03.L']]
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'
assign_bone_collections(pbone, 'Fingers')
pbone = obj.pose.bones[bones['thumb.03.R']]
pbone = obj.pose.bones[bones['f_index.03.R']]
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'
assign_bone_collections(pbone, 'Fingers')
pbone = obj.pose.bones[bones['f_middle.03.R']]
pbone = obj.pose.bones[bones['thumb.03.R']]
pbone.rigify_type = ''
pbone.lock_location = (False, False, False)
pbone.lock_rotation = (False, False, False)
Expand Down
Loading

0 comments on commit 8ba1dae

Please sign in to comment.