[Bf-blender-cvs] [65c3207] master: BGE: Fix T44782 suspend/restore dynamics on inactive object.
Porteries Tristan
noreply at git.blender.org
Sun Aug 9 20:29:56 CEST 2015
Commit: 65c320751714a6d4835c0256f6cadcdc60d095db
Author: Porteries Tristan
Date: Sat Aug 8 21:54:08 2015 +0200
Branches: master
https://developer.blender.org/rB65c320751714a6d4835c0256f6cadcdc60d095db
BGE: Fix T44782 suspend/restore dynamics on inactive object.
===================================================================
M source/gameengine/Physics/Bullet/CcdPhysicsController.cpp
===================================================================
diff --git a/source/gameengine/Physics/Bullet/CcdPhysicsController.cpp b/source/gameengine/Physics/Bullet/CcdPhysicsController.cpp
index 8ecb586..a485804 100644
--- a/source/gameengine/Physics/Bullet/CcdPhysicsController.cpp
+++ b/source/gameengine/Physics/Bullet/CcdPhysicsController.cpp
@@ -1080,7 +1080,7 @@ void CcdPhysicsController::RefreshCollisions()
void CcdPhysicsController::SuspendDynamics(bool ghost)
{
btRigidBody *body = GetRigidBody();
- if (body && !m_suspended && !GetConstructionInfo().m_bSensor)
+ if (body && !m_suspended && !GetConstructionInfo().m_bSensor && GetPhysicsEnvironment()->IsActiveCcdPhysicsController(this))
{
btBroadphaseProxy* handle = body->getBroadphaseHandle();
@@ -1102,7 +1102,7 @@ void CcdPhysicsController::SuspendDynamics(bool ghost)
void CcdPhysicsController::RestoreDynamics()
{
btRigidBody *body = GetRigidBody();
- if (body && m_suspended)
+ if (body && m_suspended && GetPhysicsEnvironment()->IsActiveCcdPhysicsController(this))
{
// before make sure any position change that was done in this logic frame are accounted for
SetTransform();
More information about the Bf-blender-cvs
mailing list