diff options
author | Gaia Clary <gaia.clary@machinimatrix.org> | 2019-05-29 09:57:47 +0300 |
---|---|---|
committer | Gaia Clary <gaia.clary@machinimatrix.org> | 2019-06-03 00:00:57 +0300 |
commit | 820e4d4303906020136b9a81ee0e878caee1f199 (patch) | |
tree | 2892fc9fb48cade4ec0cb24d60f9cf5e73501f2c /source/blender/collada | |
parent | 0bcf29b8cd9dc2c99f3f63c7761fe9e1223641ef (diff) |
fix T34062 Collada exporter: changed order of export for decomposed transformation.
1.) The Blender order of applying transforms is:
Scale
Rotation
Transformation
Reasoning: This order ensures there is no shearing, which happens
when you do scaling after rotation, see also:
https://blender.stackexchange.com/questions/1806
The Collada exporter now exports in the order how the transforms
need to be applied upon import.
2.) Also removed obsolete #if 0 lines
Diffstat (limited to 'source/blender/collada')
-rw-r--r-- | source/blender/collada/TransformWriter.cpp | 9 |
1 files changed, 2 insertions, 7 deletions
diff --git a/source/blender/collada/TransformWriter.cpp b/source/blender/collada/TransformWriter.cpp index 931801e38ce..bfeec813436 100644 --- a/source/blender/collada/TransformWriter.cpp +++ b/source/blender/collada/TransformWriter.cpp @@ -150,14 +150,9 @@ void TransformWriter::add_transform(COLLADASW::Node &node, float rot[3], float scale[3]) { -#if 0 - node.addRotateZ("rotationZ", COLLADABU::Math::Utils::radToDegF(rot[2])); - node.addRotateY("rotationY", COLLADABU::Math::Utils::radToDegF(rot[1])); - node.addRotateX("rotationX", COLLADABU::Math::Utils::radToDegF(rot[0])); -#endif - node.addTranslate("location", loc[0], loc[1], loc[2]); + node.addScale("scale", scale[0], scale[1], scale[2]); node.addRotateZ("rotationZ", RAD2DEGF(rot[2])); node.addRotateY("rotationY", RAD2DEGF(rot[1])); node.addRotateX("rotationX", RAD2DEGF(rot[0])); - node.addScale("scale", scale[0], scale[1], scale[2]); + node.addTranslate("location", loc[0], loc[1], loc[2]); } |