diff --git a/source/blender/collada/AnimationExporter.cpp b/source/blender/collada/AnimationExporter.cpp index fc13207dd2e..4beab6f7608 100644 --- a/source/blender/collada/AnimationExporter.cpp +++ b/source/blender/collada/AnimationExporter.cpp @@ -586,7 +586,7 @@ void AnimationExporter::exportAnimations(Scene *sce) addSampler(sampler); - std::string target = translate_id(ob_name + "_" + bone_name) + "/transform"; + std::string target = translate_id(bone_name) + "/transform"; addChannel(COLLADABU::URI(empty, sampler_id), target); closeAnimation(); diff --git a/source/blender/collada/TransformWriter.cpp b/source/blender/collada/TransformWriter.cpp index 546ca3e3019..3ac0654c866 100644 --- a/source/blender/collada/TransformWriter.cpp +++ b/source/blender/collada/TransformWriter.cpp @@ -48,8 +48,13 @@ void TransformWriter::add_node_transform(COLLADASW::Node& node, float mat[][4], copy_m4_m4(local, mat); } + double dmat[4][4]; + for ( int i = 0 ; i< 4 ; i ++ ) + for ( int j =0 ; j < 4 ; j++) + dmat[i][j] = (double)local[i][j]; + TransformBase::decompose(local, loc, rot, NULL, scale); - + node.addMatrix("transform",dmat); add_transform(node, loc, rot, scale); }