public override void RemoveContact(Contact contact)
{
for (int i = 0; i < penetrationConstraints.Count; i++)
{
ContactPenetrationConstraint penetrationConstraint;
if ((penetrationConstraint = penetrationConstraints.Elements[i]).contact == contact)
{
penetrationConstraint.CleanUp();
penetrationConstraints.RemoveAt(i);
penetrationConstraintPool.Push(penetrationConstraint);
break;
}
}
if (penetrationConstraints.Count == 0)
{
//No more contacts. Disable everything.
//Don't have to worry about speculative contacts here; if there existed a regular manifold contact, there couldn't now exist a speculative contact.
twistFriction.CleanUp();
slidingFriction.CleanUp();
}
}