aboutsummaryrefslogtreecommitdiff
path: root/PhysX_3.4/Source/SimulationController/src
diff options
context:
space:
mode:
authorSheikh Dawood Abdul Ajees <[email protected]>2018-11-27 13:02:50 -0600
committerSheikh Dawood Abdul Ajees <[email protected]>2018-11-27 13:02:50 -0600
commit78cab22a61786a23f2ee1ad7c5dcbec0024befca (patch)
tree27cb86e3add785670ddfdbfc901f1654d74d1cb2 /PhysX_3.4/Source/SimulationController/src
parentPhysX 3.4, APEX 1.4 patch release @24990349 (diff)
downloadphysx-3.4-78cab22a61786a23f2ee1ad7c5dcbec0024befca.tar.xz
physx-3.4-78cab22a61786a23f2ee1ad7c5dcbec0024befca.zip
PhysX 3.4, APEX 1.4 patch release @25256367
Diffstat (limited to 'PhysX_3.4/Source/SimulationController/src')
-rw-r--r--PhysX_3.4/Source/SimulationController/src/ScShapeSim.cpp12
1 files changed, 11 insertions, 1 deletions
diff --git a/PhysX_3.4/Source/SimulationController/src/ScShapeSim.cpp b/PhysX_3.4/Source/SimulationController/src/ScShapeSim.cpp
index 8b07c702..c736b3d8 100644
--- a/PhysX_3.4/Source/SimulationController/src/ScShapeSim.cpp
+++ b/PhysX_3.4/Source/SimulationController/src/ScShapeSim.cpp
@@ -267,7 +267,17 @@ void Sc::ShapeSim::onFlagChange(PxShapeFlags oldFlags)
if(oldBp != newBp)
{
if(!oldBp && newBp)
- internalAddToBroadPhase();
+ {
+ // A.B. if a trigger was removed and inserted within the same frame we need to reinsert
+ if(hasTriggerFlags(newFlags) && getScene().getAABBManager()->isMarkedForRemove(getElementID()))
+ {
+ reinsertBroadPhase();
+ }
+ else
+ {
+ internalAddToBroadPhase();
+ }
+ }
else
internalRemoveFromBroadPhase();
}