[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [48222] branches/soc-2012-bratwurst/source /blender/collada: Matrix node transform import fix.
Sukhitha Jayathilake
pr.jayathilake at gmail.com
Sat Jun 23 19:44:39 CEST 2012
Revision: 48222
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=48222
Author: phabtar
Date: 2012-06-23 17:44:28 +0000 (Sat, 23 Jun 2012)
Log Message:
-----------
Matrix node transform import fix.
Modified Paths:
--------------
branches/soc-2012-bratwurst/source/blender/collada/AnimationExporter.cpp
branches/soc-2012-bratwurst/source/blender/collada/AnimationImporter.cpp
branches/soc-2012-bratwurst/source/blender/collada/TransformReader.cpp
Modified: branches/soc-2012-bratwurst/source/blender/collada/AnimationExporter.cpp
===================================================================
--- branches/soc-2012-bratwurst/source/blender/collada/AnimationExporter.cpp 2012-06-23 14:23:44 UTC (rev 48221)
+++ branches/soc-2012-bratwurst/source/blender/collada/AnimationExporter.cpp 2012-06-23 17:44:28 UTC (rev 48222)
@@ -882,8 +882,8 @@
UnitConverter converter;
- float outmat[4][4];
- converter.mat4_to_dae(outmat, mat);
+ double outmat[4][4];
+ converter.mat4_to_dae_double(outmat, mat);
source.appendValues(outmat);
Modified: branches/soc-2012-bratwurst/source/blender/collada/AnimationImporter.cpp
===================================================================
--- branches/soc-2012-bratwurst/source/blender/collada/AnimationImporter.cpp 2012-06-23 14:23:44 UTC (rev 48221)
+++ branches/soc-2012-bratwurst/source/blender/collada/AnimationImporter.cpp 2012-06-23 17:44:28 UTC (rev 48222)
@@ -1561,8 +1561,6 @@
default:
fprintf(stderr, "unsupported transformation type %d\n", type);
}
- // dae_matrix_to_mat4(tm, m);
-
}
float temp[4][4];
Modified: branches/soc-2012-bratwurst/source/blender/collada/TransformReader.cpp
===================================================================
--- branches/soc-2012-bratwurst/source/blender/collada/TransformReader.cpp 2012-06-23 14:23:44 UTC (rev 48221)
+++ branches/soc-2012-bratwurst/source/blender/collada/TransformReader.cpp 2012-06-23 17:44:28 UTC (rev 48222)
@@ -43,29 +43,31 @@
COLLADAFW::Transformation *tm = node->getTransformations()[i];
COLLADAFW::Transformation::TransformationType type = tm->getTransformationType();
-
- switch (type) {
- case COLLADAFW::Transformation::TRANSLATE:
- dae_translate_to_mat4(tm, cur);
- break;
- case COLLADAFW::Transformation::ROTATE:
- dae_rotate_to_mat4(tm, cur);
- break;
- case COLLADAFW::Transformation::SCALE:
- dae_scale_to_mat4(tm, cur);
- break;
- case COLLADAFW::Transformation::MATRIX:
- dae_matrix_to_mat4(tm, cur);
- break;
- case COLLADAFW::Transformation::LOOKAT:
- case COLLADAFW::Transformation::SKEW:
- fprintf(stderr, "LOOKAT and SKEW transformations are not supported yet.\n");
- break;
+
+ if(type == COLLADAFW::Transformation::MATRIX){
+ dae_matrix_to_mat4(tm, mat);
+ return;
}
-
- copy_m4_m4(copy, mat);
- mult_m4_m4m4(mat, copy, cur);
-
+ else{
+ switch (type) {
+ case COLLADAFW::Transformation::TRANSLATE:
+ dae_translate_to_mat4(tm, cur);
+ break;
+ case COLLADAFW::Transformation::ROTATE:
+ dae_rotate_to_mat4(tm, cur);
+ break;
+ case COLLADAFW::Transformation::SCALE:
+ dae_scale_to_mat4(tm, cur);
+ break;
+ case COLLADAFW::Transformation::LOOKAT:
+ case COLLADAFW::Transformation::SKEW:
+ fprintf(stderr, "LOOKAT and SKEW transformations are not supported yet.\n");
+ break;
+ }
+ copy_m4_m4(copy, mat);
+ mult_m4_m4m4(mat, copy, cur);
+ }
+
if (animation_map) {
// AnimationList that drives this Transformation
const COLLADAFW::UniqueId& anim_list_id = tm->getAnimationList();
More information about the Bf-blender-cvs
mailing list