[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [19947] trunk/blender/source/gameengine/ Ketsji: BGE bug #18624: Collision detection fails on parented objects.

Benoit Bolsee benoit.bolsee at online.be
Mon Apr 27 18:40:27 CEST 2009


Revision: 19947
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=19947
Author:   ben2610
Date:     2009-04-27 18:40:26 +0200 (Mon, 27 Apr 2009)

Log Message:
-----------
BGE bug #18624: Collision detection fails on parented objects. Partial fix, parented shape now moves with the parent but still the parent near detector detects the child only in the zone where it was parented.

Modified Paths:
--------------
    trunk/blender/source/gameengine/Ketsji/KX_BulletPhysicsController.cpp
    trunk/blender/source/gameengine/Ketsji/KX_BulletPhysicsController.h

Modified: trunk/blender/source/gameengine/Ketsji/KX_BulletPhysicsController.cpp
===================================================================
--- trunk/blender/source/gameengine/Ketsji/KX_BulletPhysicsController.cpp	2009-04-27 15:43:35 UTC (rev 19946)
+++ trunk/blender/source/gameengine/Ketsji/KX_BulletPhysicsController.cpp	2009-04-27 16:40:26 UTC (rev 19947)
@@ -361,6 +361,7 @@
 		btBroadphaseProxy* handle = body->getBroadphaseHandle();
 		m_savedCollisionFlags = body->getCollisionFlags();
 		m_savedMass = GetMass();
+		m_savedDyna = m_bDyna;
 		m_savedCollisionFilterGroup = handle->m_collisionFilterGroup;
 		m_savedCollisionFilterMask = handle->m_collisionFilterMask;
 		m_savedActivationState = body->getActivationState();
@@ -370,6 +371,7 @@
 			btCollisionObject::CF_STATIC_OBJECT|((ghost)?btCollisionObject::CF_NO_CONTACT_RESPONSE:(m_savedCollisionFlags&btCollisionObject::CF_NO_CONTACT_RESPONSE)),
 			btBroadphaseProxy::StaticFilter, 
 			btBroadphaseProxy::AllFilter ^ btBroadphaseProxy::StaticFilter);
+		m_bDyna = false;
 	}
 }
 
@@ -384,6 +386,7 @@
 			m_savedCollisionFilterGroup,
 			m_savedCollisionFilterMask);
 		body->forceActivationState(m_savedActivationState);
+		m_bDyna = m_savedDyna;
 	}
 }
 

Modified: trunk/blender/source/gameengine/Ketsji/KX_BulletPhysicsController.h
===================================================================
--- trunk/blender/source/gameengine/Ketsji/KX_BulletPhysicsController.h	2009-04-27 15:43:35 UTC (rev 19946)
+++ trunk/blender/source/gameengine/Ketsji/KX_BulletPhysicsController.h	2009-04-27 16:40:26 UTC (rev 19947)
@@ -13,6 +13,7 @@
 	short int m_savedCollisionFilterGroup;
 	short int m_savedCollisionFilterMask;
 	MT_Scalar m_savedMass;
+	bool m_savedDyna;
 	btCollisionShape* m_bulletChildShape;
 
 public:





More information about the Bf-blender-cvs mailing list