Got a question about using Ragdoll with Maya’s Human IK, so I put this together. Overall, it’s quite tedious as Human IK is it’s own little mini-system inside of Maya and doesn’t always play by the rules. The gist of the workaround is to assign to locators that follow the Human IK character, and retarget onto the Human IK end effectors.
In the video, I mention a script to automate one of the tedious processes, here it is.
- Select all assigned controls
- Run the below script in a Python tab of your Script Editor
from ragdoll.vendor import cmdx from ragdoll import api, commands with cmdx.DagModifier() as mod: try: group = cmdx.encode("locators_grp") except cmdx.ExistError: group = mod.create_node("transform", name="locators_grp") for ik in cmdx.sl(): marker = ik.output(type="rdMarker") if not marker: continue name = ik.name() + "_loc" locator = mod.create_node("transform", name, parent=group) shape = mod.create_node("locator", name + "Shape", parent=locator) cmds.parentConstraint(str(ik), str(locator), maintainOffset=False) mod.connect(locator["worldMatrix"], marker["inputMatrix"])