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:
-rw-r--r--source/blender/collada/AnimationExporter.cpp9
-rw-r--r--source/blender/collada/AnimationExporter.h1
-rw-r--r--source/blender/collada/AnimationImporter.cpp24
-rw-r--r--source/blender/editors/io/io_collada.c12
4 files changed, 12 insertions, 34 deletions
diff --git a/source/blender/collada/AnimationExporter.cpp b/source/blender/collada/AnimationExporter.cpp
index 684575bfc08..1196b3dfbe8 100644
--- a/source/blender/collada/AnimationExporter.cpp
+++ b/source/blender/collada/AnimationExporter.cpp
@@ -214,19 +214,15 @@ void AnimationExporter::export_sampled_matrix_animation(Object *ob, std::vector<
for (std::vector<float>::iterator ctime = ctimes.begin(); ctime != ctimes.end(); ++ctime) {
float fmat[4][4];
- float outmat[4][4];
bc_update_scene(eval_ctx, scene, *ctime);
BKE_object_matrix_local_get(ob, fmat);
-
- converter.mat4_to_dae(outmat, fmat);
-
if (this->export_settings->limit_precision)
- bc_sanitize_mat(outmat, 6);
+ bc_sanitize_mat(fmat, 6);
for (int i = 0; i < 4; i++)
for (int j = 0; j < 4; j++)
- values.push_back(outmat[j][i]);
+ values.push_back(fmat[i][j]);
}
std::string ob_name = id_name(ob);
@@ -252,7 +248,6 @@ void AnimationExporter::export_sampled_transrotloc_animation(Object *ob, std::ve
float feul[3];
bc_update_scene(eval_ctx, scene, *ctime);
-
BKE_object_matrix_local_get(ob, fmat);
mat4_decompose(floc, fquat, fsize, fmat);
quat_to_eul(feul, fquat);
diff --git a/source/blender/collada/AnimationExporter.h b/source/blender/collada/AnimationExporter.h
index 1e0f434ca13..b324b4c25f8 100644
--- a/source/blender/collada/AnimationExporter.h
+++ b/source/blender/collada/AnimationExporter.h
@@ -201,6 +201,5 @@ protected:
bool validateConstraints(bConstraint *con);
- //void calc_obmat_at_time(Object *ob, float ctime);
};
diff --git a/source/blender/collada/AnimationImporter.cpp b/source/blender/collada/AnimationImporter.cpp
index 48fb27bc533..4ef256fbcf1 100644
--- a/source/blender/collada/AnimationImporter.cpp
+++ b/source/blender/collada/AnimationImporter.cpp
@@ -764,7 +764,6 @@ void AnimationImporter::apply_matrix_curves(Object *ob, std::vector<FCurve *>& a
axis = i - 7;
}
-
if (is_joint)
BLI_snprintf(rna_path, sizeof(rna_path), "%s.%s", joint_path, tm_str);
else
@@ -780,8 +779,8 @@ void AnimationImporter::apply_matrix_curves(Object *ob, std::vector<FCurve *>& a
std::vector<float>::iterator it;
- float qref[4];
- unit_qt(qref);
+ //float qref[4];
+ //unit_qt(qref);
// sample values at each frame
for (it = frames.begin(); it != frames.end(); it++) {
@@ -817,17 +816,7 @@ void AnimationImporter::apply_matrix_curves(Object *ob, std::vector<FCurve *>& a
}
float rot[4], loc[3], scale[3];
-
- bc_rotate_from_reference_quat(rot, qref, mat);
- copy_qt_qt(qref, rot);
-
-#if 0
- for (int i = 0 ; i < 4; i++) {
- rot[i] = RAD2DEGF(rot[i]);
- }
-#endif
- copy_v3_v3(loc, mat[3]);
- mat4_to_size(scale, mat);
+ mat4_decompose(loc, rot, scale, mat);
// add keys
for (int i = 0; i < totcu; i++) {
@@ -1854,12 +1843,7 @@ bool AnimationImporter::evaluate_animation(COLLADAFW::Transformation *tm, float
}
fcurve_is_used(*it);
}
-
- COLLADAFW::Matrix tm(matrix);
- dae_matrix_to_mat4(&tm, mat);
-
- std::vector<FCurve *>::iterator it;
-
+ unit_converter->dae_matrix_to_mat4_(mat, matrix);
return true;
}
}
diff --git a/source/blender/editors/io/io_collada.c b/source/blender/editors/io/io_collada.c
index d89af5e85bd..443b8afd6ff 100644
--- a/source/blender/editors/io/io_collada.c
+++ b/source/blender/editors/io/io_collada.c
@@ -379,22 +379,22 @@ void WM_OT_collada_export(wmOperatorType *ot)
RNA_def_enum(func, "export_mesh_type_selection", prop_bc_export_mesh_type, 0,
"Resolution", "Modifier resolution for export");
- RNA_def_boolean(func, "selected", 0, "Selection Only",
+ RNA_def_boolean(func, "selected", false, "Selection Only",
"Export only selected elements");
- RNA_def_boolean(func, "include_children", 0, "Include Children",
+ RNA_def_boolean(func, "include_children", false, "Include Children",
"Export all children of selected objects (even if not selected)");
- RNA_def_boolean(func, "include_armatures", 0, "Include Armatures",
+ RNA_def_boolean(func, "include_armatures", false, "Include Armatures",
"Export related armatures (even if not selected)");
- RNA_def_boolean(func, "include_shapekeys", 1, "Include Shape Keys",
+ RNA_def_boolean(func, "include_shapekeys", false, "Include Shape Keys",
"Export all Shape Keys from Mesh Objects");
- RNA_def_boolean(func, "deform_bones_only", 0, "Deform Bones only",
+ RNA_def_boolean(func, "deform_bones_only", false, "Deform Bones only",
"Only export deforming bones with armatures");
- RNA_def_boolean(func, "include_animations", false,
+ RNA_def_boolean(func, "include_animations", true,
"Include Animations", "Export Animations if available.\nExporting Animations will enforce the decomposition of node transforms\ninto <translation> <rotation> and <scale> components");
RNA_def_boolean(func, "sample_animations", 0,