add btActivationCollisionAlgoritm to fix deactivation problems, reported here:

http://bulletphysics.com/Bullet/phpBB3/viewtopic.php?f=9&t=2616

provide access to active objects, requested here:
http://code.google.com/p/bullet/issues/detail?id=128
This commit is contained in:
erwin.coumans
2008-11-07 03:37:14 +00:00
parent f46d65d337
commit 86353f0ad8
25 changed files with 317 additions and 188 deletions

View File

@@ -114,6 +114,21 @@ void btCollisionWorld::addCollisionObject(btCollisionObject* collisionObject,sho
}
void btCollisionWorld::findActiveObjects()
{
m_activeObjects.resize(0);
for ( int i=0;i<m_collisionObjects.size();i++)
{
btCollisionObject* colObj = m_collisionObjects[i];
if (colObj->isActive())
{
m_activeObjects.push_back(colObj);
}
}
}
void btCollisionWorld::updateAabbs()
@@ -121,9 +136,9 @@ void btCollisionWorld::updateAabbs()
BT_PROFILE("updateAabbs");
btTransform predictedTrans;
for ( int i=0;i<m_collisionObjects.size();i++)
for ( int i=0;i<m_activeObjects.size();i++)
{
btCollisionObject* colObj = m_collisionObjects[i];
btCollisionObject* colObj = m_activeObjects[i];
//only update aabb of active objects
if (colObj->isActive())