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:
authorBrecht Van Lommel <brechtvanlommel@pandora.be>2011-12-16 23:53:12 +0400
committerBrecht Van Lommel <brechtvanlommel@pandora.be>2011-12-16 23:53:12 +0400
commit3311164b24da61f2967f96d0ee27508a7e2e0267 (patch)
tree0824417cf3d645f59d98b210c02a4c5ef6c05a48 /source/blender/collada/ArmatureImporter.cpp
parent3c8ab559a5bd31fd38e9c5cf9da8505ca28f4887 (diff)
Math lib: matrix multiplication order fix for two functions that were
inconsistent with similar functions & math notation: mul_m4_m4m4(R, B, A) => mult_m4_m4m4(R, A, B) mul_m3_m3m4(R, B, A) => mult_m3_m3m4(R, A, B) For branch maintainers, it should be relatively simple to fix things manually, it's also possible run this script after merging to do automatic replacement: http://www.pasteall.org/27459/python
Diffstat (limited to 'source/blender/collada/ArmatureImporter.cpp')
-rw-r--r--source/blender/collada/ArmatureImporter.cpp10
1 files changed, 5 insertions, 5 deletions
diff --git a/source/blender/collada/ArmatureImporter.cpp b/source/blender/collada/ArmatureImporter.cpp
index bababf880a6..4bc0c18551a 100644
--- a/source/blender/collada/ArmatureImporter.cpp
+++ b/source/blender/collada/ArmatureImporter.cpp
@@ -99,7 +99,7 @@ void ArmatureImporter::create_unskinned_bone( COLLADAFW::Node *node, EditBone *p
// get world-space
if (parent){
- mul_m4_m4m4(mat, obmat, parent_mat);
+ mult_m4_m4m4(mat, parent_mat, obmat);
}
else {
@@ -185,7 +185,7 @@ void ArmatureImporter::create_bone(SkinInfo& skin, COLLADAFW::Node *node, EditBo
// get world-space
if (parent)
- mul_m4_m4m4(mat, obmat, parent_mat);
+ mult_m4_m4m4(mat, parent_mat, obmat);
else
copy_m4_m4(mat, obmat);
@@ -584,17 +584,17 @@ void ArmatureImporter::set_pose ( Object * ob_arm , COLLADAFW::Node * root_node
// get world-space
if (parentname){
- mul_m4_m4m4(mat, obmat, parent_mat);
+ mult_m4_m4m4(mat, parent_mat, obmat);
bPoseChannel *parchan = get_pose_channel(ob_arm->pose, parentname);
- mul_m4_m4m4(pchan->pose_mat, mat , parchan->pose_mat);
+ mult_m4_m4m4(pchan->pose_mat, parchan->pose_mat, mat );
}
else {
copy_m4_m4(mat, obmat);
float invObmat[4][4];
invert_m4_m4(invObmat, ob_arm->obmat);
- mul_m4_m4m4(pchan->pose_mat, mat, invObmat);
+ mult_m4_m4m4(pchan->pose_mat, invObmat, mat);
}
mat4_to_axis_angle(ax,&angle,mat);