Revision: 20809
          
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=20809
Author:   erwin
Date:     2009-06-11 15:42:41 +0200 (Thu, 11 Jun 2009)

Log Message:
-----------
Bugfix for [#18911] Applied torque breaks rigid bodies in game engine

Modified Paths:
--------------
    trunk/blender/source/gameengine/Physics/Bullet/CcdPhysicsController.cpp

Modified: 
trunk/blender/source/gameengine/Physics/Bullet/CcdPhysicsController.cpp
===================================================================
--- trunk/blender/source/gameengine/Physics/Bullet/CcdPhysicsController.cpp     
2009-06-11 11:54:56 UTC (rev 20808)
+++ trunk/blender/source/gameengine/Physics/Bullet/CcdPhysicsController.cpp     
2009-06-11 13:42:41 UTC (rev 20809)
@@ -1016,14 +1016,21 @@
                }
                if (body)
                {
-                       //workaround for incompatibility between 'DYNAMIC' game 
object, and angular factor
-                       //a DYNAMIC object has some inconsistency: it has no 
angular effect due to collisions, but still has torque
-                       const btVector3& angFac = body->getAngularFactor();
-                       btVector3 tmpFac(0,0,1);
-                       body->setAngularFactor(tmpFac);
-                       body->applyTorque(torque);
-                       body->setAngularFactor(angFac);
-               }
+                       if      (m_cci.m_bRigid)
+                       {
+                               body->applyTorque(torque);
+                       }
+                       else
+                       {
+                               //workaround for incompatibility between 
'DYNAMIC' game object, and angular factor
+                               //a DYNAMIC object has some inconsistency: it 
has no angular effect due to collisions, but still has torque
+                               const btVector3& angFac = 
body->getAngularFactor();
+                               btVector3 tmpFac(0,0,1);
+                               body->setAngularFactor(tmpFac);
+                               body->applyTorque(torque);
+                               body->setAngularFactor(angFac);
+                       } 
+               } 
        }
 }
 


_______________________________________________
Bf-blender-cvs mailing list
Bf-blender-cvs@blender.org
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to