Remove global variables in btRigidBody

This commit is contained in:
Benau 2020-02-28 09:30:47 +08:00
parent ef1d74b961
commit 336883e2e7
3 changed files with 13 additions and 12 deletions

View File

@ -271,7 +271,7 @@ int btDiscreteDynamicsWorld::stepSimulation( btScalar timeStep,int maxSubSteps,
if (getDebugDrawer()) if (getDebugDrawer())
{ {
btIDebugDraw* debugDrawer = getDebugDrawer (); btIDebugDraw* debugDrawer = getDebugDrawer ();
gDisableDeactivation = (debugDrawer->getDebugMode() & btIDebugDraw::DBG_NoDeactivation) != 0; //gDisableDeactivation = (debugDrawer->getDebugMode() & btIDebugDraw::DBG_NoDeactivation) != 0;
} }
if (numSimulationSubSteps) if (numSimulationSubSteps)
{ {

View File

@ -22,9 +22,10 @@ subject to the following restrictions:
#include "LinearMath/btSerializer.h" #include "LinearMath/btSerializer.h"
//'temporarily' global variables //'temporarily' global variables
btScalar gDeactivationTime = btScalar(2.); // Need to disable completely for STK with multiple physics instance
bool gDisableDeactivation = false; //btScalar gDeactivationTime = btScalar(2.);
static int uniqueId = 0; //bool gDisableDeactivation = false;
//static int uniqueId = 0;
btRigidBody::btRigidBody(const btRigidBody::btRigidBodyConstructionInfo& constructionInfo) btRigidBody::btRigidBody(const btRigidBody::btRigidBodyConstructionInfo& constructionInfo)
@ -81,7 +82,7 @@ void btRigidBody::setupRigidBody(const btRigidBody::btRigidBodyConstructionInfo&
m_restitution = constructionInfo.m_restitution; m_restitution = constructionInfo.m_restitution;
setCollisionShape( constructionInfo.m_collisionShape ); setCollisionShape( constructionInfo.m_collisionShape );
m_debugBodyId = uniqueId++; // m_debugBodyId = uniqueId++;
btAssert(constructionInfo.m_mass>=0); btAssert(constructionInfo.m_mass>=0);
setMassProps(constructionInfo.m_mass, constructionInfo.m_localInertia); setMassProps(constructionInfo.m_mass, constructionInfo.m_localInertia);
updateInertiaTensor(); updateInertiaTensor();

View File

@ -90,7 +90,7 @@ class btRigidBody : public btCollisionObject
int m_rigidbodyFlags; int m_rigidbodyFlags;
int m_debugBodyId; //int m_debugBodyId;
protected: protected:
@ -464,16 +464,16 @@ public:
return false; return false;
//disable deactivation //disable deactivation
if (gDisableDeactivation || (gDeactivationTime == btScalar(0.))) //if (gDisableDeactivation || (gDeactivationTime == btScalar(0.)))
return false; // return false;
if ( (getActivationState() == ISLAND_SLEEPING) || (getActivationState() == WANTS_DEACTIVATION)) if ( (getActivationState() == ISLAND_SLEEPING) || (getActivationState() == WANTS_DEACTIVATION))
return true; return true;
if (m_deactivationTime> gDeactivationTime) //if (m_deactivationTime> gDeactivationTime)
{ //{
return true; // return true;
} //}
return false; return false;
} }