MCPcopy Create free account
hub / github.com/NVIDIAGameWorks/PhysX / setUpdateData

Method setUpdateData

physx/source/lowlevelaabb/src/BpBroadPhaseABP.cpp:3242–3272  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

3240}
3241
3242void 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
3274void BroadPhaseABP::update()
3275{

Callers

nothing calls this directly

Calls 9

setTransientDataMethod · 0.80
getAABBsMethod · 0.80
getLUTMethod · 0.80
isValidFunction · 0.70
getContactDistanceMethod · 0.45
getCapacityMethod · 0.45
checkResizeMethod · 0.45
sizeMethod · 0.45

Tested by

no test coverage detected