Tutorial: Creating the 360 degree Twist Extractor

Tutorial: Creating the 360 degree Twist Extractor

It’s roughly a year between each post on this blog, a bit less frequent than what I had in mind when I started this blog, eh 😛

Anyway, here’s a quick tutorial on how you can create a TwistExtractor that goes past the standard 180 degree’ flip. There’s different techniques on how to do this, the one I show is probably the simplest one.

I forgot to mention in the video as it’s pretty logical, but if you’re using translate-based stretch in your rig, you must have offset-groups on the twistextractors, which you connect the translate of your driver-joints to.

Shout out if there’s questions or anything 🙂

The tutorial:



I just got a great tip from Harry Houghton on Vimeo. In addition to the rpIkHandle and the ikSplineHandle, you can also use an aimConstraint (with World Up Type set to None) to remove the primary axis from a joint. Just did a quick benchmark, and it seems to evaluate roughly 15% faster than the rpIkHandle. So if you’re a pedant like me, you should probably go for that one instead 😉

4,148 total views, 4 views today


  1. Hello Jorn-Harald,
    Great tutorial! I was wondering how one might use this technique for the wrist? Also, I was able to setup the twist extraction for the shoulder, but I do get some flips when I use the value, divide it by 2, and plug it into my single upper arm twist joint. Is this a bad practice? How should I use the extraction value for twist joints? Thank you so much for your time. Greatly appreciated.


    • Jorn says:

      Sorry about the late reply, this has slipped through my radar. I’m sure you’ve figured it out by now, but yeah it works great for the wrists also 🙂 As for the problem you were having, I would have to look at the file to tell what the problem is.

  2. Sune says:


    Thanks for sharing! I’ve been using a setup like this for a long time (minus with 360 trick) and in my experience it works great both in Max, Maya and MotionBuilder.

    As far as getting the same results with an aimConstraint, I have not been able to get that to work nearly as stable as the IK setup. If you could post an example of a setup, that would be great to see.


    • Jorn says:

      Hey Sune, I actually found the same as you. It looked like it worked pretty stable at first sight, but after testing some more I found that it wasn’t nearly as stable as the IK-setup. I don’t know if Harry has some tricks up his sleeve for this, but this issue might be the case for Harry also, it’s just that it’s hard to spot some times.

      Cheers 🙂

  3. Bogdan says:

    Hey Jørn,

    Really liked the idea of a 360 twist so i’ve tried to implement it in an actual FK/IK/BND arm , but its not working properly. The twist joints are flipping . By any chance could you upload your test file, the arm you show at the start of the video ?
    Here is my file: http://bit.ly/2qCvSw5 . Yu can see that once FX joint is hittin 90 degress, the twist joints are flipping. If i did it wrong, cant figure it at the moment where the mistake is .

Leave a Reply

Your email address will not be published. Required fields are marked *