BGE: Fix T43215: Rigidbody constraints deletion.

Deleting an object was deleting all rigidbody constraints in the scene.
Bug was introduced with D701.

Reviewers: agoose77, sergof, moguri, lordloki, sybren

Reviewed By: lordloki, sybren

Subscribers: sybren, hbar, blueprintrandom, sergof, agoose77

Differential Revision: https://developer.blender.org/D1007
This commit is contained in:
Thomas Szepe
2015-02-20 23:37:32 +01:00
parent 1b92dfa961
commit 87572091fb
3 changed files with 41 additions and 3 deletions

View File

@@ -154,6 +154,28 @@ CcdPhysicsController::CcdPhysicsController (const CcdConstructionInfo& ci)
CreateRigidbody();
}
void CcdPhysicsController::addCcdConstraintRef(btTypedConstraint* c)
{
int index = m_ccdConstraintRefs.findLinearSearch(c);
if (index == m_ccdConstraintRefs.size())
m_ccdConstraintRefs.push_back(c);
}
void CcdPhysicsController::removeCcdConstraintRef(btTypedConstraint* c)
{
m_ccdConstraintRefs.remove(c);
}
btTypedConstraint* CcdPhysicsController::getCcdConstraintRef(int index)
{
return m_ccdConstraintRefs[index];
}
int CcdPhysicsController::getNumCcdConstraintRefs() const
{
return m_ccdConstraintRefs.size();
}
btTransform& CcdPhysicsController::GetTransformFromMotionState(PHY_IMotionState* motionState)
{
static btTransform trans;