• Wednesday , 5 August 2020

Tutorial: Rigging an IK Arm in Maya

Code Canyon


Follow the link to sign up for a free 7 day trial on Lynda.com:

In this tutorial, I describe the process for creating a basic IK arm rig in Maya. Topics include:

– Joint creation (clavicle, shoulder, elbow, forearm, and wrist)
– Clavicle control creation (using the aim constraint)
– Hand control creation (using an IKRP solver, point constraint, and orient constraint)
– Automated forearm roll (using expressions)

I’ll be posting more tips and tutorials soon.


3d Ocean

Related Posts


  1. Dwaine Higgins
    January 3, 2019 at 13:22

    Nice video with good explanations on why you're doing certain things. Looking forward to future rigging videos! subscribed

  2. Jason Westmas
    January 3, 2019 at 13:22

    I've pretty much been able to rig anything pretty ok, but I've never seen a decent setup for an automatic forearm roll to fix the twisting issue when the hand rotates on the X axis. I'm sure you guys know what that is.

    So in a basic arm setup we have a RP IK solver with a manipulator curve that drives the IK handle with a point constraint and the orientation of the hand joint using an orientation constraint. Mechanically this works fine. What a lot of people are taught to do with the forearm and wrist issue is to create a forearm joint in between the wrist and elbow. That's a good idea until we try to automate it. If we use the .rotateX /2 expression that most people teach that only works until the hand manipulator gets moved at a certain angle to where the orientation of the hand creates gimble lock.

    So then if we use the Object Axis orientation for the rotate manipulator we don't have to worry about gimble but unfortunately that forces us to rotate the hand manipulator on all 3 axis thus making the forearm rotate even when we rotate the hand up and down because of the three axis rotating together to over come the gimble lock. It also makes a mess in the curve editor some times creating euler flips.

    So what does a professional wrist and forearm setup really look like?? I seriously have never seen one. All I've seen are some half baked setups. Thanks for any hints on this. I'm guess it requires a double manipulator setup for the hand and wrist region?

  3. JavierM
    January 3, 2019 at 13:22

    So when I move the control for the wrist, it detaches from the skeleton and stretches my ik handle. the control remains unattached when I unclick. the rig is still up and the ik handle stays stretched. where did I go wrong?

  4. Rapyd Fyre
    January 3, 2019 at 13:22

    Whenever I place the IK Handle from the shoulder to the wrist it turns the entire joint set up backwards and doesnt follow the anatomy of my mesh. Yet when I see you do it, it doesnt move your joint setups at all. Is there a fix for this or am I missing something?

  5. Dana Mica
    January 3, 2019 at 13:22

    5:33 i kept on using the insert key but i can't seem to move it. 🙁 can someone help me? i'm using mac.

  6. Rodrigo Costa
    January 3, 2019 at 13:22

    Hey, I was just following this tutorial but I hit a rock.
    It at the part where I need to move the Pivot Point from the Forarm to the hand by selecting the "Effector" and hitting "Insert" but my issue is that when I click "Insert" t doesn't do anything.

    – Is there any other way around it, maybe manually?

    Thank you.

  7. seasons8bit
    January 3, 2019 at 13:22

    what is the super mover etc?

  8. Christi Kiyoon
    January 3, 2019 at 13:22

    Love your tutorials

  9. Elly Chand
    January 3, 2019 at 13:22

    Hello anyone here can help to tell me on how to rig the other hand? Big Thx beforehand!

  10. Pluto_Elly
    January 3, 2019 at 13:22

    Love your tutorial man.

  11. Nicostratos
    January 3, 2019 at 13:22

    Thank you for some very nice tutorials!

  12. Milan Tique
    January 3, 2019 at 13:22

    wait so when I pull the clavicle control, the joints move but the finger controls and hand control doesn't move with the joints. What am i missing?

  13. Abdulkarim Hamo
    January 3, 2019 at 13:22

    Many thanks Mr Jason, you've saved my life ^_^

  14. sam son
    January 3, 2019 at 13:22

    I checked lynda, and you don't have any continuation on this rig. Like the head and hands. Most important how to parent it all together. The hands i can do, but the head would be great if u could make a tut on for your rig.

  15. Krobbkag Destroyer Of Worlds
    January 3, 2019 at 13:22

    Hey Jason, great tutorial: one question I do have in regards to the hand though is if we are making a rig that toggles between IK and FK: how would we keep the Bound joints on the hand from rotating like before you built the wrist controller in the video?

  16. TheNiceZombie
    January 3, 2019 at 13:22

    My hand control is sitting backward so when I twist it the forearm is twisting the opposite way.
    What do I write in the "expression Editor" to make my forearm do the opposite of my Wrist CTRL so that the problem solves itself?

  17. Eduardo Rodrigues
    January 3, 2019 at 13:22

    Nice tutorial. A good tip instead of parenting temporarily the group, is to actually use it so the rig does not break.
    For instance, create a null group "Ctrl + G"
    Select the Joint + Ctrl Select the null grp and do a Point Constraint and a Orient Constraint with Maintain Offset off – On the settings
    Go to the group on the outliner and delete the PointConstraint and OrientConstraint on the null grp.
    Parent the curve to the Joint and freeze its transformations.
    Now you will have a null grp with garbage values and the curve inside of it. This way the rig will never break because the null group is acting like "glue" on the joint with the proper Rotation and Translation values.

  18. mysterioso2006
    January 3, 2019 at 13:22

    7:50 One thing you forgot to mention but is important for others doing this tutorial; when doing this constraint, make sure to check "maintain offset" in the option box!

  19. Indian Einstein
    January 3, 2019 at 13:22

    thanx jason.
    i have maya skel Joints named arm, forearm, wrist, palm1, palm2. as u said i have snapped ik handle to wrist end after drawing ik handle (to forearm). that has worked. no issues.

    then i did…
    1) constrained palm1 rotation xyz to L hand ctl.
    2) set driven keys for palm2 for small secondary rot effect.
    3) as u said, i gave expression "wrist.rx = palm1.rx;" . then just to check, when i rotated in x the L_hand_ctl to +20 and did undo.
    as a result wrist and palm1 was showing -20 (when L_hand_ctl rotx = 0).
    4) then i changed the controller in expression like this..
    "wrist.rx = L_hand_ctl.rx;". then i checked rotating the L_hand_ctl in x to +20 and then again to 0. now the wrist joint was showing correctly as 0.

  20. Sirkamran Tech
    January 3, 2019 at 13:22

    sir can you make complete setup rig tutorial

  21. Sirkamran Tech
    January 3, 2019 at 13:22

    awesome much helpfull but i cant trace out defender is it creat itself for forearm in ouliner

  22. [Ids5621-Retro]
    January 3, 2019 at 13:22

    best tutorial, you're a legend

  23. MaTtHeW00369
    January 3, 2019 at 13:22

    I still cant manage to get the expression rotation and the wrist orient to work with one another — i keep getting the 'may not evaluate as expected' warning and the whole thing goes bad…. im using maya 2016 so that might be the issue?

  24. Said Kotry
    January 3, 2019 at 13:22

    I have a problem please,after skinning I do any pose , bones and geometry respond good , when I close Maya and reopen it I found bones are in the same pose position I left it , but the geometry lose connection with bones and return to their position before skin. Bones still colourd and if I move them the geometry do not respond. How to fix that please. Thank you very much

  25. Edward SB
    January 3, 2019 at 13:22

    Super video

  26. Oandam
    January 3, 2019 at 13:22

    This might be the best tutorials I've seen. So clear and helpful unlike some others.

  27. alien
    January 3, 2019 at 13:22

    Hi! I've been using your videos as guide to rig my characters and I always have a difficult time rigging the arms. This time, I've successfully aimed the control to the left arm properly but it doesn't work correctly with the right arm. When I move the controller, the joints move up and down as well but they spin and I've kept trying to fix it but I can't 🙁 Can someone pls help me

  28. aqmalfaizal
    January 3, 2019 at 13:22


  29. Jintaro Kensei
    January 3, 2019 at 13:22

    Any trick for the forearm twist joint for Maya LT? There aint no expression editor there. And I kinda tried everything i could think of, but Node Editor allows only raw inputs, can't operate a divide on a parameter(specifically a float, integers are accepted though). Also, how do you make your controls follow your rig around? I move da hand but the elbow control just stays in the same place. It still works though. Will I break something if I parent a control to something it constraints?

  30. Dustin Baugh
    January 3, 2019 at 13:22

    I cannot figure out how to get the end effector to display in the outliner to select it. Can you help me please?

  31. Kevin B
    January 3, 2019 at 13:22

    Please add a tutorial on how to make stretchy IK/FK arms. Much appreciated, Jason ;).

  32. GTS Revolution
    January 3, 2019 at 13:22

    I follow all the instructions but when i try to rotate the hand control like in 8:34, the last joint does not follow the other side of the hand control. Almost as if the hand control rotates way faster than the wrist joint actually does.

  33. Kaan ö
    January 3, 2019 at 13:22


  34. Fatma Rajab
    January 3, 2019 at 13:22

    very nice tutorial. really helped me a lot. But i'm having a tiny problem. When I try moving the pivot of the effector, my arm starts spinning around like crazy such that I cannot get the pivot to the wrist. please help.

  35. emeiiu jean
    January 3, 2019 at 13:22

    Hi, wanna ask, can i parent the L_hand_CTRL to clavicle controller? so
    when i move the upper body the hand will move too? because if i twist
    the upper body the hand_ctrl left.

  36. Daniel James Animations
    January 3, 2019 at 13:22

    Hi there. I hope someone here can help me. I have made an arm with a rig, but the only thing I need to do now is apply the forearm twist. The way I have my forearm rig set up is that instead of one forearm joint, I have 2. In the expression editor, how does it apply? Where as with one joint is is by half, how do I divide it by 2? Is it one following the wrist by 33% and the same with the other joint?

  37. Lanzy
    January 3, 2019 at 13:22

    Clear and to the point. Great tutorial.

  38. Elson Choo
    January 3, 2019 at 13:22

    Hi Jason, When I aim constrain and orient constrain my hand ctrl to my Hand IK Handle, my forearm joint was unable to rotate anymore, this resulted in the expression being useless. Any solution you would kindly suggest?

  39. GameYan Studio
    January 3, 2019 at 13:22

    nice rigging video….

  40. Deleted
    January 3, 2019 at 13:22

    5:23 when I try to move pivot point from effector only the joints startes to acting up… weird

  41. Harrison Vogl
    January 3, 2019 at 13:22

    Good video, I had not rigged in a while and this helped with touching up the ik constraining

  42. Win_in
    January 3, 2019 at 13:22

    Hey man. what about fingers rig?

  43. Szymon Warunek
    January 3, 2019 at 13:22

    Jason thanx for your videos-they are similar to videos of digital tutors of the guy:Delano Athias,who made similar videos about rigging 3D characters

Leave A Comment

You must be logged in to post a comment.