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

Method update

physx/source/scenequery/src/SqIncrementalAABBTree.cpp:672–682  ·  view source on GitHub ↗

update the index, do a full remove/insert update

Source from the content-addressed store, hash-verified

670
671// update the index, do a full remove/insert update
672IncrementalAABBTreeNode* IncrementalAABBTree::update(IncrementalAABBTreeNode* node, const PoolIndex index, const PxBounds3* bounds, NodeList& changedLeaf)
673{
674 PX_SIMD_GUARD;
675
676 IncrementalAABBTreeNode* removedNode = remove(node, index, bounds);
677 if(removedNode && removedNode->isLeaf())
678 {
679 changedLeaf.pushBack(removedNode);
680 }
681 return insert(index, bounds, changedLeaf);
682}
683
684// update the index, faster version with a lazy update of objects that moved just a bit
685IncrementalAABBTreeNode* IncrementalAABBTree::updateFast(IncrementalAABBTreeNode* node, const PoolIndex index, const PxBounds3* bounds, NodeList& changedLeaf)

Calls 3

removeFunction · 0.85
isLeafMethod · 0.45
pushBackMethod · 0.45

Tested by

no test coverage detected