Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoshua Leung <aligorith@gmail.com>2009-10-08 04:57:00 +0400
committerJoshua Leung <aligorith@gmail.com>2009-10-08 04:57:00 +0400
commit475ab5ceb4875eb37dd761f7a71ff569dd493395 (patch)
treea545c13c1ea502e60b4c64fb56756c8a3432ed83 /source/blender/makesdna/DNA_action_types.h
parentfd511eb984a23b63b373e171666667c8213579c0 (diff)
Rotation Modes Bugfix:
Animating rotations using different rotation modes should now work more often than before. Previously, quaternion and axis-angle values were stored in the same variable in DNA, but that was causing problems with other animation curves overwriting the values and causing the rotations to not work as expected. There are still some issues, but I'll track those down later tonight
Diffstat (limited to 'source/blender/makesdna/DNA_action_types.h')
-rw-r--r--source/blender/makesdna/DNA_action_types.h11
1 files changed, 7 insertions, 4 deletions
diff --git a/source/blender/makesdna/DNA_action_types.h b/source/blender/makesdna/DNA_action_types.h
index 3201a1df6a5..e2eb13f0bdf 100644
--- a/source/blender/makesdna/DNA_action_types.h
+++ b/source/blender/makesdna/DNA_action_types.h
@@ -128,12 +128,15 @@ typedef struct bPoseChannel {
void *dual_quat;
void *b_bone_dual_quats;
- float loc[3]; /* transforms - written in by actions or transform */
+ /* transforms - written in by actions or transform */
+ float loc[3];
float size[3];
- float eul[3]; /* rotations - written in by actions or transform (but only euler/quat in use at any one time!) */
- float quat[4];
- short rotmode; /* for now either quat (0), or xyz-euler (1) */
+ /* rotations - written in by actions or transform (but only one representation gets used at any time) */
+ float eul[3]; /* euler rotation */
+ float quat[4]; /* quaternion rotation */
+ float rotAxis[3], rotAngle; /* axis-angle rotation */
+ short rotmode; /* eRotationModes - rotation representation to use */
short pad;
float chan_mat[4][4]; /* matrix result of loc/quat/size , and where we put deform in, see next line */