I've defined and set a btOverlapFilterCallback and defined a new needBroadphaseCollision().
The only problem is I then cast to my own class using:
(ICollisionNode*) ((btCollisionObject*)proxy0->m_clientObject)->getUserPointer()
where I use flags to determine if these objects collide. The only problem with this is that these cached pairs aren't updated when I change these flags and I don't know how to force this to happen.
I tried:
Code: Select all
broadphasePairCache->getOverlappingPairCache()->removeOverlappingPairsContainingProxy( bulletObject->getBroadphaseHandle(), collisionDispatcher );
broadphasePairCache->calculateOverlappingPairs(collisionDispatcher);
but that didn't work, does anyone know a solution for this?
Cheers,
Adversus.