A few additions: 1. I think gimbal lock occurs when you apply 3 axial rotations on the same object. Therefore, you can avoid gimbal lock when you apply several rotations on different (parented) objects like BODY and hip. 2. The rotation system used in most 3D apps is not the genuine Euler angles system, but the so called Tait-Bryant system (3 rotations, 3 different rotation axes). Gimbal lock works differently in the Euler angles system (3 rotations, 2 different rotation axes). More information is here http://www.univie.ac.at/cga/faq/angles.html http://mathworld.wolfram.com/EulerAngles.html 3. In Poser, the conventions (sort order of rotation axes) are called "rotation order". The convention is defined by the sort order of the channels in the script (document or library code). You can apply the Tait-Bryant conventions (xyz, xzy, yzx, yxz, zxy, zyx) interactively in the Joint Editor. 4. Some advanced 3D animation programs can apply the Tait-Bryant system or the Euler angles system. In the Euler angles system, the first and third rotation is about the same axis (xyx, xzx, yxy, yzy, zxz, zyz). You can implement real Euler angles in Poser: You modify the channel code and include two xRotate channels or two yRotate channels etc., for example rotateX xRot rotateY yRot rotateX xRot2. Be sure to use a unique channel name for the third rotation channel. 5. All Cardanic rotation systems (Tait-Bryant as well as Euler angles) show gimbal lock under certain conditions. 6. In Poser, you are not limited to 3 rotation. You can include 4 or more rotation channels in the channel code of a single object. (I don't think any other 3D animation software can do this.) You can for example use a 5 parameters system rotateX lRot rotateY pRot rotateZ zRot rotateY yRot2 rotateX xRot2. Using this rotation system you always have 3 DOFs (degrees of freedom) and no gimbal lock at all. In terms of spherical coordinates, you can create all Great Circles and all Small Circles on the sphere with a single object, as shown in the above picture.