# How can I find the Primary and Secondary axes in the Basic IK function inside a Control Rig properly?

**URL:** <https://forums.unrealengine.com/t/how-can-i-find-the-primary-and-secondary-axes-in-the-basic-ik-function-inside-a-control-rig-properly/979618>\
**Category:** Character & Animation\
**Tags:** unreal-engine, skeletalmesh, question\
**Created:** [April 14, 2023, 11:22pm UTC](https://forums.unrealengine.com/t/how-can-i-find-the-primary-and-secondary-axes-in-the-basic-ik-function-inside-a-control-rig-properly/979618 "2023-04-14T23:22:17Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![Portine](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/portine/32/1182274_2.png) [@Portine](https://forums.unrealengine.com/u/Portine)\
**Post date:** [April 14, 2023, 11:22pm UTC](https://forums.unrealengine.com/t/how-can-i-find-the-primary-and-secondary-axes-in-the-basic-ik-function-inside-a-control-rig-properly/979618/1 "2023-04-14T23:22:18Z")

</div>

I’m having a lot of trouble trying to figure out what the Primary and Secondary axes (shown in the function) can be, I followed tutorials but none helped me in this case, I still can’t find out what values these should be.

Is it possible that there’s a problem in the mesh/skeleton itself? If so, how can I fix it? This case specifically is a skeleton from the marketplace.

 ![image](https://d3kjluh73b9h9o.cloudfront.net/original/4X/1/0/9/10946cb321d11d9916ce2f08bc007041d25ffa24.jpeg)

Thanks in advance!

---

<div class="post-metadata">

**Author:** ![canndask](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/canndask/32/762231_2.png) [@canndask](https://forums.unrealengine.com/u/canndask)\
**Post date:** [October 24, 2023, 12:59am UTC](https://forums.unrealengine.com/t/how-can-i-find-the-primary-and-secondary-axes-in-the-basic-ik-function-inside-a-control-rig-properly/979618/2 "2023-10-24T00:59:34Z")

</div>

I have the same issue, there must be a way but what?

---

<div class="post-metadata">

**Author:** ![Portine](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/portine/32/1182274_2.png) [@Portine](https://forums.unrealengine.com/u/Portine)\
**Post date:** [October 24, 2023, 4:26pm UTC](https://forums.unrealengine.com/t/how-can-i-find-the-primary-and-secondary-axes-in-the-basic-ik-function-inside-a-control-rig-properly/979618/3 "2023-10-24T16:26:03Z")

</div>

I ended giving up trying to solve this issue and just left it as it was 😕

---

<div class="post-metadata">

**Author:** ![canndask](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/canndask/32/762231_2.png) [@canndask](https://forums.unrealengine.com/u/canndask)\
**Post date:** [October 29, 2023, 10:23pm UTC](https://forums.unrealengine.com/t/how-can-i-find-the-primary-and-secondary-axes-in-the-basic-ik-function-inside-a-control-rig-properly/979618/4 "2023-10-29T22:23:32Z")

</div>

Oh I see. ☹

Well, when I have some free time, I will try to export the _skeletal mesh_ from engine and then attempt to rig it again in **Blender**. I’m not sure if it will work, but at least I can take a closer look at the problem and try to find a solution. 🤔

---

<div class="post-metadata">

**Author:** ![alessandroTironi](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@alessandroTironi](https://forums.unrealengine.com/u/alessandroTironi)\
**Post date:** [April 21, 2024, 1:03pm UTC](https://forums.unrealengine.com/t/how-can-i-find-the-primary-and-secondary-axes-in-the-basic-ik-function-inside-a-control-rig-properly/979618/5 "2024-04-21T13:03:26Z")

</div>

This post is quite old, but I am bringing it back to life with the hope of helping someone.  
I had the same issue, my basic IK was breaking the skeleton and everyone in tutorials seemed to input the same axes blindly without giving explanations.  
[This video](https://www.youtube.com/watch?v=_mtpzyLpbaM) by AskADev opened my eyes. Turns out something was wrong in the orientation of the bones in my rig: the Y axes were not coplanar, so a secondary axis could not be defined univocally for the bone chain. In particular:

- the X axis of each bone should point to the next bone in the chain (or to the exact opposite direction)
- the Y axis of each bone should lay on the plane defined by the positions of each bone in the chain itself.  
With these conditions, a primary axis of (1,0,0) or (-1,0,0) and a secondary axis of (0,1,0) should work smoothly.

So the best way to fix this is to review your original rig in Blender/Maya and fix the orientations. An alternative that does not require another software is building some sort of [axes-agnostic IK solver](https://alessandrotironigamedev.com/posts/2024/04/21/control-rig-an-axes-agnostic-basic-ik-solver/) in your control rig.

I hope this helps.

---

<div class="post-metadata">

**Author:** ![sean.lake](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/sean.lake/32/1160828_2.png) [@sean.lake](https://forums.unrealengine.com/u/sean.lake)\
**Post date:** [September 25, 2024, 1:44pm UTC](https://forums.unrealengine.com/t/how-can-i-find-the-primary-and-secondary-axes-in-the-basic-ik-function-inside-a-control-rig-properly/979618/6 "2024-09-25T13:44:49Z")

</div>

Thanks DrSiro for your update.  
There are tools within Unreal that aren’t always shown, or overlooked, but one that is VERY handy is to turn on the **display axes on selection** , option shown here

 ![image](https://d3kjluh73b9h9o.cloudfront.net/original/4X/8/5/6/856a6dba85e1b329efe5a845d6602e9129223b67.jpeg)  
I tend to up the axes scale, as I can’t see real well 🙂. Now, when you select the bone/joint in your hierarchy, it’ll show you the correct orientation. In this particular model, you can see the orientation, X is pointing down the chain(+), and the Z is the “rotational” direction. Riggers will change the up axis depending on the direction they wish to change it.  
Also, the IKTwoBone is much more user friendly and takes care of some of the odd math that happens under the hood. Try it out!  
 ![image](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/5/7/257251ae8d3c7a0e4d62c7364ac2bd5868bf0f85.png)

---

<div class="post-metadata">

**Author:** ![sean.lake](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/sean.lake/32/1160828_2.png) [@sean.lake](https://forums.unrealengine.com/u/sean.lake)\
**Post date:** [September 25, 2024, 1:46pm UTC](https://forums.unrealengine.com/t/how-can-i-find-the-primary-and-secondary-axes-in-the-basic-ik-function-inside-a-control-rig-properly/979618/7 "2024-09-25T13:46:31Z")

</div>

P.S you’ll notice you don’t have to drag in and GET your controls, it’s all using the various “pin” settings as shown in the IKTwoBone function.

---

<div class="post-metadata">

**Author:** ![MiitsuOfficial](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@MiitsuOfficial](https://forums.unrealengine.com/u/MiitsuOfficial)\
**Post date:** [January 12, 2026, 12:25pm UTC](https://forums.unrealengine.com/t/how-can-i-find-the-primary-and-secondary-axes-in-the-basic-ik-function-inside-a-control-rig-properly/979618/8 "2026-01-12T12:25:15Z")

</div>

![image](https://d3kjluh73b9h9o.cloudfront.net/original/4X/b/f/7/bf7a40b0199057f6ef7deea691b84266a008b1de.jpeg)

Thanks! Also In UE 5.7 it is located here now
