I’ve noticed in Blender that if you rotate an Armature’s bone in pose mode, say 30 degrees on the Y axis, the bone will rotate around the Z axis. (The bone ‘rolls’ instead of moving like the hand of a clock).
This ends up producing a different rotation than if you rotate an ordinary object on the same axis by the same amount.
Can anyone confirm this is this expected behaviour and if so why?
I’ve tried this on Blender 2.76, brand new file with an Armature added to the origin, a single bone and no prior rotation or scale applied. It also produces the same result regardless of the whether the rotation mode is quaternion or Euler.
Yes it is the expected behaviour - the longitudinal axis of a bone (i.e. from tail to head) is ALWAYS it’s Y axis, therefore if you rotate a bone in Pose Mode by either typing a value into it’s Transform Y rotation box or by keying R YY and a number - it will always "roll’ the bone. It is not necessarily rotating about the Z axis, only if that also happens to be the bone’s Y axis, i.e. it is standing vertical.
BTW you should not rotate anything in Object mode, unless you then apply the rotation afterwards by keying CTRL+A and choosing “Rotation” from the popup, do all your edits in EDIT mode, that is what it is there for…
Try clicking the checkbox on the Armatures “armature” panel to show the bone axes and you will see what I mean about a bone’s axes.
Yes, I do that too, now I understand what can go wrong with this approach, but I always apply the rotation/scale afterwards… I think it is perhaps better for new users to stick to the “book” approach until they know all the pitfalls maybe?