diff options
author | Joshua Leung <aligorith@gmail.com> | 2009-09-28 14:19:20 +0400 |
---|---|---|
committer | Joshua Leung <aligorith@gmail.com> | 2009-09-28 14:19:20 +0400 |
commit | 7d2fd5449e21b533f9aeb6f5f79af5e2396a8063 (patch) | |
tree | d146b4680f3123a112238bffb875fd632b1e4931 /source/blender/blenkernel/BKE_armature.h | |
parent | 981afef08e051d00e955526c1c79b8dd01d4bdd5 (diff) |
Durian Feature Request: Rotation Modes for Objects
This (biggish) commit generalises the rotation modes functionality added for Bones, allowing Objects to use the various Euler Rotation orders, Axis-Angle, and Quaternion rotation representations.
I've also cleaned up the nomenclature of the rotation-related settings so that the naming styles are more consistent with each other. Unfortunately, this will break all files involving object or bone rotation animation made in 2.5 versions (2.4x will still get correctly converted).
General Notes:
* By default, Objects still default to using Eulers, while Bones will use Quaternions by default still.
* I've fixed all areas that I'm currently aware of to work with these changes. However, there are probably a few places where I've missed a few changes (i.e. auto-keyframing will need attention later).
* Removed the old "IPO-Keys" stuff from Transform code. I'm unlikely to restore this in the near future, and trying to fix that to include support for this commit would have been too much work.
Diffstat (limited to 'source/blender/blenkernel/BKE_armature.h')
-rw-r--r-- | source/blender/blenkernel/BKE_armature.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/source/blender/blenkernel/BKE_armature.h b/source/blender/blenkernel/BKE_armature.h index 8dbd2721fb9..e5d0c4274b3 100644 --- a/source/blender/blenkernel/BKE_armature.h +++ b/source/blender/blenkernel/BKE_armature.h @@ -103,6 +103,9 @@ void armature_mat_pose_to_bone(struct bPoseChannel *pchan, float inmat[][4], flo void armature_loc_pose_to_bone(struct bPoseChannel *pchan, float *inloc, float *outloc); void armature_mat_pose_to_delta(float delta_mat[][4], float pose_mat[][4], float arm_mat[][4]); +/* Rotation Mode Conversions - Used for PoseChannels + Objects... */ +void BKE_rotMode_change_values(float quat[4], float eul[3], short oldMode, short newMode); + /* B-Bone support */ typedef struct Mat4 { float mat[4][4]; |