Home Technical Talk

[Maya] IK Handle deforming model

SuperSparkplug
polycounter lvl 9
Offline / Send Message
SuperSparkplug polycounter lvl 9
Hi there,

I'm attempting to practice my rigging with downloaded models online. Luckily, this model I downloaded had a skeleton included, so I'm practicing creating my controls. I was trying to set up my IK Handles for my legs, but whenever I do, it moves the leg bones out of shape. Why is that?

Replies

  • antweiler
    Options
    Offline / Send Message
    antweiler polycounter lvl 8
    I guess, you are creating a Rotate Plane IK solver. For this one, a pole vector, the direction of the rotate plane, needs to be defined. The usual way ist to create a Control object and create a pole vector constraint for the ik handle.
    Also, i would do the skinning after rigging, since the joint chain normally twists a bit, after adding an IK (this can be prevented, but isnt necessary for a simple rig)
  • jfeez
    Options
    Offline / Send Message
    jfeez polycounter lvl 8
    If this is happening when you create the ik handle then its most likely transform related. Check that your rotate values are clean(zeroed), your joint orients are clean(i.e only have values in one axis) and that you translations are clean; the knee and foot should only have a value on one axis, there is also the possibility it is a scale compensation issue, which i've had before with maya iks, this is just a tickbox on the joint in the attribute editor. Its good practise to duplicate the leg chain for the IK and parent or point/orient constrain the bind joints to the ik ones. You can see potential popping issues like i mention below put also allows for fk/ik and keeps your bind hierarchy clean.

    Also, more @antweiler, why would you rig before skinning? its a potential waste of time, what if you have to move a joint while skinning for better deformation, you would have to recreate parts of the rig. Your reason is wrong as well, if the IK chain twists then you have an issue with the joint orientations/positioning of the pole vector which will cause popping when fk/ik switching and snapping, animators will 'love' you for this
  • antweiler
    Options
    Offline / Send Message
    antweiler polycounter lvl 8
    jfeez, what you describe is indeed good practice, but has nothing to do with the twisting of a non defined pole vector. The same for joint scaling and scale compensate.
    Advanced setups have their skeletons for skinning and exporting separated from the control rigs skeleton anyways, but this is not a must have for simple cases, always assuming this is a quick and simple rig and not some uncharted4 like uber rig.
    I recommended rigging before skinning, because SuperSparkplug can adjust the knee after the creation of the PV, and still has his rig in bindpose.
    The simplest manual way to get a location for your polevector ist to create a poly triangle between leg, knee and ankle bone, center pivot, scale it up, place a locator on the surface using the life tool in fornt of the knee. If you use this locator as a pv constraint, your joint chain will go back into its original orientation.
  • jfeez
    Options
    Offline / Send Message
    jfeez polycounter lvl 8
    Good practice is good practice, regardless of skill level or project. Im not gonna debate, its moot to the conversation and not helpful for OP

    @SuperSparkplug, i replicated this problem earlier by rotating the second joint(knee in your case) leaving the rotate values on the joint and applying the IK constraint. If you freeze transforms on the joint (modify > freeze transformations) then everything will work fine. Again i would do this in another hierarchy as if you have skin attached you will have to save it out, unbind, fix, rebind, reload skin to fix this. This is another reason why i would avoid putting stuff in the bind hierarchy and having stuff split off :)
Sign In or Register to comment.