@10:20ish Ohhh man, I can't remember how rotation orders work. Rotating the arm on it's respective axis via the widgets work as expected, but when I rotate it via the transforms bar it rotates differently.
Rotating via the X channel appears to be local, whereas the Y and Z channels appear to be relative to the world space.
The rotation order is XYZ, and I have FK limb follow set to 1.000.
Is this how it's meant to behave, or have I possibly changed something without realising?
Edit: Okay so I remember-ish how rotation orders work. And I've realised why I've suddenly hit a roadblock. So far I've been used to rotating everything via it's local space. Changing to world space has meant it's not completely viable to rotate directly from the transform channels anymore - is this right?
I'm assuming the reason why we have changed to animate the arms in world space is so that we're not counter animating against the rest of the body moving?
Hi Harris,
Just to recapitulate the Rotation Order:
The Rotation Order is only relevant in the Transform Panel, otherwise they are done in the order you perform them.
in the Transform Panel, the Rotations are in Local Space and are calculated in the order you set, but, this is written as if they are Functions, so Euler XYZ means the Z Rotation is evaluated first, then the Y and lastly the X.. like X(Y(Z(v))).
Hi Harris,
It sounds like you have reached one of the animator's realisations.
It goes from - I don't even know what rotations are, I just move things
to
Oh I get it - this is easy
to
WTF - I don't understand this at all.
This is the normal journey.
Rotation is complicated - and much harder than you think.
Let me see if I can break it down simply - but first I will answer your question.
No, the relationship doesn't change if you are dealing with world space, it's just that most of the rotation you dealt with when the FK was following the chest was inherited.
But yes, the reason you want to switch to world space FK is so you don't have to counter animate every adjustment. It becomes really difficult to get a nice arc in that situation.
Ok now on to rotation and rotation order.
------
Euler Rotation
You can think of the Euler rotation order like a parent hierarchy. Euler XYZ for example.
They are calculated in the reverse order.
Z is the parent (moves the other 2)
Y also moves x
X only moves by itself.
You can see this when you switch the manipulator over to Gimbal.
When you use the Local manipulator, you are seeing the local axes, but only Gimbal will show you where those transform channels actually are.
Go and test this out now and then come back.
The big issue with Euler rotations in the middle axis. If that rotates 90 degrees, it will align the other 2 axes - this is called gimbal lock and is often the reason why your rotations go wonky in some spots.
This is not Blender being weird - it's mathematics.
What ever Euler rotation order you have, there is no avoiding this issue, it will just happen in a different spot, and if the rotation order changes but the curves are the same, you will also get different orientations.
(you can think about this as turning left and walking forward VS walking forward and turning left. The instructions happen in a different order so the result is different)
Quaternion Rotation
Quaternion rotations avoid gimbal lock - but they aren't very logical to use. Because there are 4 channels and they rarely ever match the axis you want to move.
Therefore it makes it really difficult to actually adjust the curves in the GE. But if you throw enough keyframes at it - you will get the job done without ever running in gimbal lock.
They do have their own mathematical quirks though.
- They always travel the shortest distance.
So if you keyframe it rotation 181 degrees, it will rotate 179 degrees the other way to get there. And you can't rotate 360 degrees from 1 keyframe to the next.
It will see that as the same value.
To avoid this you always need to keep any rotation below one half revolution between keys. (which is usually pretty easy except for when you want something to spin around a few times)
How do you solve your issue?
You are going to hate this - but experience.
You will learn when to use the FK follow, and when not to. You will learn what gimbal lock looks like (and Discontinuity) and get better at handling it.
You might also switch to Quaternion for some situations.
Personally, I use to use Quaternion on any part that had to rotate on 3 axes. But then I found it way easier to deal with the 3 somewhat logical channels rather than 4 channels that never even pretended to be logical. So these days I just use Euler XYZ (except for a few specific situations in the rig)
(Oh and just so you know, Maya does not have Quaternion rotations)
Anyway - hope that helps.
Cor' blimey Wayne!
I tested out playing with the rotation orders on the default cube, and saw how the change of order worked.
Working on Rivets arms, I have swapped from local to gimbal and back, and definitely saw a change in how it works - as well as when changing rotation orders. But also saw how I might run into gimble lock. I also saw a number of things occuring and thought, "nope not today!"
But yes you're right, I've learnt how to manipulate the graph editor, how to apply timing and spacing, and how much squish and stretch I should give my cat when I hug him etc. I'll learn how rotation orders work and when to apply them only with experience (and maybe hair pulling)!
Cheers!