[Bf-blender-cvs] [528514c] master: bge physics: disallowing compound collisions for soft bodies

Ines Almeida noreply at git.blender.org
Thu Feb 19 12:23:21 CET 2015


Commit: 528514c3938429e99dc59d756cbcc46a7c6d8dce
Author: Ines Almeida
Date:   Tue Jun 24 15:44:34 2014 +0100
Branches: master
https://developer.blender.org/rB528514c3938429e99dc59d756cbcc46a7c6d8dce

bge physics: disallowing compound collisions for soft bodies

Closes D610, T40427, T30630

Cherrypicked from local squash
Conflicts:
	release/scripts/startup/bl_ui/properties_game.py

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

M	source/gameengine/Converter/BL_BlenderDataConversion.cpp

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

diff --git a/source/gameengine/Converter/BL_BlenderDataConversion.cpp b/source/gameengine/Converter/BL_BlenderDataConversion.cpp
index c614074..22ad5e1 100644
--- a/source/gameengine/Converter/BL_BlenderDataConversion.cpp
+++ b/source/gameengine/Converter/BL_BlenderDataConversion.cpp
@@ -1389,16 +1389,14 @@ static void BL_CreatePhysicsObjectNew(KX_GameObject* gameobj,
 	}
 
 	bool isCompoundChild = false;
-	bool hasCompoundChildren = !parent && (blenderobject->gameflag & OB_CHILD);
+	bool hasCompoundChildren = !parent && (blenderobject->gameflag & OB_CHILD) && !(blenderobject->gameflag & OB_SOFT_BODY);
 
 	/* When the parent is not OB_DYNAMIC and has no OB_COLLISION then it gets no bullet controller
-	 * and cant be apart of the parents compound shape */
+	 * and cant be apart of the parents compound shape, same goes for OB_SOFT_BODY */
 	if (parent && (parent->gameflag & (OB_DYNAMIC | OB_COLLISION))) {
-		
-		if ((parent->gameflag & OB_CHILD) != 0 && (blenderobject->gameflag & OB_CHILD))
-		{
+		if( (parent->gameflag & OB_CHILD)!=0 && (blenderobject->gameflag & OB_CHILD) && !(parent->gameflag & OB_SOFT_BODY)) {
 			isCompoundChild = true;
-		} 
+		}
 	}
 	if (processCompoundChildren != isCompoundChild)
 		return;




More information about the Bf-blender-cvs mailing list