Skip to content

Commit 70b32e1

Browse files
committed
Improve IK/FK matching in arms and leg: arbitrary lenght support remove keyframe in previous frame and bakeAnim filter match_fk_to_ik_arbitrary_lengths only for IK #501
1 parent 17fe9fd commit 70b32e1

1 file changed

Lines changed: 8 additions & 8 deletions

File tree

release/scripts/mgear/core/anim_utils.py

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -973,7 +973,7 @@ def _get_mth(name):
973973
transform.matchWorldTransform(
974974
ik_targets["reverse_ankle_ik"], ik_ctrl["reverse_ankle_ik"]
975975
)
976-
match_fk_to_ik_arbitrary_lengths(fk_controls, ui_host,
976+
match_fk_to_ik_arbitrary_lengths(fk_controls, ui_node,
977977
ikfk_attr, ik_ctrl["pole_vector"])
978978
except KeyError:
979979
pass
@@ -1248,7 +1248,7 @@ def _get_mth(name):
12481248
for i, c in enumerate(foot_fk):
12491249
c.setMatrix(foot_FK_matrix[i], worldSpace=True)
12501250

1251-
match_fk_to_ik_arbitrary_lengths(fk_ctrls, ui_host,
1251+
match_fk_to_ik_arbitrary_lengths(fk_ctrls, ui_node,
12521252
ikfk_attr, upv_ctrl)
12531253

12541254
# sets keyframes
@@ -1912,9 +1912,9 @@ def bakeAnimation(
19121912
for j, n in enumerate(key_dst_nodes):
19131913
if worldMatrixList[i][j]:
19141914
n.setMatrix(worldMatrixList[i][j], worldSpace=True)
1915-
1916-
match_fk_to_ik_arbitrary_lengths(key_src_nodes, switch_attr_name.split(".")[0],
1917-
switch_attr_name.split(".")[1], key_dst_nodes[1])
1915+
if definition == "IK":
1916+
match_fk_to_ik_arbitrary_lengths(key_src_nodes, switch_attr_name.split(".")[0],
1917+
switch_attr_name.split(".")[1], key_dst_nodes[1])
19181918

19191919
pm.setKeyframe(key_dst_nodes, at=channels)
19201920
pm.setKeyframe(switch_attr_name)
@@ -2773,9 +2773,9 @@ def match_fk_to_ik_arbitrary_lengths(fk_controls, ui_host,
27732773
query=True,
27742774
keyframeCount=True)
27752775

2776-
if keyframe:
2777-
cmds.setKeyframe(f"{ui_str}.{scale_attr}", time=(cmds.currentTime(query=True) - 1.0))
2778-
cmds.setKeyframe(f"{ui_str}.{slide_attr}", time=(cmds.currentTime(query=True) - 1.0))
2776+
# if keyframe:
2777+
# cmds.setKeyframe(f"{ui_str}.{scale_attr}", time=(cmds.currentTime(query=True) - 1.0))
2778+
# cmds.setKeyframe(f"{ui_str}.{slide_attr}", time=(cmds.currentTime(query=True) - 1.0))
27792779

27802780
# Run FK to IK match
27812781
match_fk_to_ik_scale_slide(

0 commit comments

Comments
 (0)