| 3240 | } |
| 3241 | |
| 3242 | void BroadPhaseABP::setUpdateData(const BroadPhaseUpdateData& updateData) |
| 3243 | { |
| 3244 | mABP->setTransientData(updateData.getAABBs(), updateData.getContactDistance()/*, updateData.getGroups()*/); |
| 3245 | |
| 3246 | const PxU32 newCapacity = updateData.getCapacity(); |
| 3247 | mABP->mShared.checkResize(newCapacity); |
| 3248 | |
| 3249 | #if PX_CHECKED |
| 3250 | // PT: WARNING: this must be done after the allocateMappingArray call |
| 3251 | if(!BroadPhaseUpdateData::isValid(updateData, *this)) |
| 3252 | { |
| 3253 | PX_CHECK_MSG(false, "Illegal BroadPhaseUpdateData \n"); |
| 3254 | return; |
| 3255 | } |
| 3256 | #endif |
| 3257 | |
| 3258 | mGroups = updateData.getGroups(); |
| 3259 | #ifdef BP_FILTERING_USES_TYPE_IN_GROUP |
| 3260 | mLUT = updateData.getLUT(); |
| 3261 | #endif |
| 3262 | |
| 3263 | removeObjects(updateData); |
| 3264 | addObjects(updateData); |
| 3265 | updateObjects(updateData); |
| 3266 | |
| 3267 | PX_ASSERT(!mCreated.size()); |
| 3268 | PX_ASSERT(!mDeleted.size()); |
| 3269 | |
| 3270 | if(gPrepareOverlapsFlag) |
| 3271 | mABP->Region_prepareOverlaps(); |
| 3272 | } |
| 3273 | |
| 3274 | void BroadPhaseABP::update() |
| 3275 | { |
nothing calls this directly
no test coverage detected