KatsBits Community

Copy Rotation feature will operate on only 2 of the 3 axes

0 Members and 1 Guest are viewing this topic.

Offline ACDmvmkr

  • Newbie
    • Posts: 47
Copy Rotation feature will operate on only 2 of the 3 axes for this one bone set only.

I'm rigging an armature, and for one set of bones I'm having a terrible time dealing with a very confusing and maddening problem. I've been reading on co-ordinate axis and nothing I'm finding is helping me deal with the problem.

On this one bone, I have several bones parented to it. I want the child bones to copy the rotation of the parent bone along it's long Y axis, but to a lesser degree. It works perfectly, but only when the parent bone is oriented in only 2 of the 3 co-ordinate axes.

All of the bones are co-located, arranged with their Y axes running along the long-wise Y axis of the parent bone, and all the bones are rolled so that the other 2 axis (X and Z) are pointing in the same direction as each other and the parent. I made sure of this in EDIT mode before parenting each bone to the parent.

I have the copy roll constraint set to copy the Y axis roll of the parent bone set to Local Space. This set-up gives great results, except for that one pesky axis direction. If I play around with the C-Space settings (I've tried every possible combination, wasting 2 hours of my afternoon) getting just plain bat-**** results from the others, so I've currently settled on the "local & local" choices. I've tried both Offset ON and Offset OFF settings with no effect.

One thing I have noticed is that Blender seems to randomly switch what it considers to be the "Local" or "Normal" axis I'm trying to use. For the two axis, it works fine using the axis shown by the axis labels of the bones, but then on the third axis, it seems to flip axis inexplicably, no longer using the labeled ones shown on the bones. When THIS happens, the axis numbers changing in the corner box, no longer seem to correspond to the axes pasted onto the bones themselves, or to either of the Local, or Normal transform widgets.....can't figure that one out either....

In using the X-form widget, I'm using the "normal" settings here whenever I can, because that seems the most consistent one relative to the actual bone positions, and use the "local" settings for the constraint setting, as that seems to have no choice for "normal".

settings


These are my child/target settings....

side


Arms sticking out to the side, the discs are rotating properly here,

fwd


....and they are rotating properly when sticking forwards as well....

down


....but when they hang downwards, the discs ignore the copy rotation constraints, and for some reason, the X,Y,Z numbers in the corner flip. They only do it for this set of bones (and the matching ones on the right side as well), the rest of the sets work fine in ALL 3 DIRECTIONS!

What is happening for me here?

Thanks;

I'm stumped here, as elsewhere on that same armature, I have several examples of similar set-ups that are not having this very annoying problem.


Offline kat

  • Administrator
  • Hero Member
  • *
    • Posts: 2690
    • KatsBits
First thing to check is the Armature Object, make sure you've set the Objects Location/Rotation data ("Ctrl+A") - if you don't do this before rigging and animating it can someone result in problems similar to what you're experiencing. Also check the bones orientation, if they are markedly different you will get unexpected rotation. To fix just select the bones and press "Ctrl+N" to "Recalculate" the bone roll/axis - BE WARNED, this may screw up the rig as you have it so should ideally be done immediately after the armature is initially built, not in the later stages of set-up and use. Those are the simple answers.

The complex answer is this may be the result of the parent/child relationship of the rigs bones... Because you're using a Constraint, in effect what that does is over-ride (or augment) the physical relationship between bones; when applied to a bone group and set to do a slightly different operation (via the Constraint), the combination of the bones underlying structural relationship (how bones are physically chained) can sometimes cause odd results due to a sort of pseudo averaging between those and the modifier (that's not technically accurate, but the only way I can think to describe what might be happening).

In other words, with a modifier in place you may need to adjust bone links in Edit mode to get this to work the way you're expecting, and there's a fare bit of trail-and-error involved in doing that (as I'm sure you already know).

OT: cleaned up your post a little bit.. when you compose a post in a text editor make sure "Word Wrap" is turned off otherwise this and other forums treat the message as written and will post it with tonnes of white-space.