[Bf-blender-cvs] [c79f2160662] fracture_modifier: fix for angle calculation due to usage of initially rotated rigidbodies in external mode

Martin Felke noreply at git.blender.org
Mon Aug 28 16:28:10 CEST 2017


Commit: c79f21606628010a9c540de1ac6d5133a620941b
Author: Martin Felke
Date:   Mon Aug 28 16:27:48 2017 +0200
Branches: fracture_modifier
https://developer.blender.org/rBc79f21606628010a9c540de1ac6d5133a620941b

fix for angle calculation due to usage of initially rotated rigidbodies in external mode

===================================================================

M	source/blender/blenkernel/intern/rigidbody.c

===================================================================

diff --git a/source/blender/blenkernel/intern/rigidbody.c b/source/blender/blenkernel/intern/rigidbody.c
index 250a221c798..eb9ddae27a1 100644
--- a/source/blender/blenkernel/intern/rigidbody.c
+++ b/source/blender/blenkernel/intern/rigidbody.c
@@ -2453,6 +2453,11 @@ static void calc_dist_angle(RigidBodyShardCon *con, float *dist, float *angle, b
 
 	if (exact)
 	{
+		float iquat1[4], iquat2[4];
+		invert_qt_qt(iquat1, con->mi1->rot);
+		invert_qt_qt(iquat2, con->mi2->rot);
+		mul_qt_qtqt(q1, q1, iquat1);
+		mul_qt_qtqt(q2, q2, iquat2);
 		rotation_between_quats_to_quat(qdiff, q1, q2);
 		normalize_qt(qdiff);
 		*angle = 2.0f * saacos(qdiff[0]);



More information about the Bf-blender-cvs mailing list