Why UE4 not using PhysX's eTRIGGER_SHAPE as Trigger?

as far as i know, UE4’s Trigger is implemented by overlapping the component with the scene, and this check is driven by a recursive UPrimitiveComponent::UpdateOverlaps, this may cost some CPU for very deep transform hierarchy.
i wander why not using PxShapeFlag::eTRIGGER_SHAPE for Trigger, a feature already implemented by PhysX, what’s the ration beind the choice?

I also want to avoid recursive UpdateOverlaps. I tried to use ISimEventCallbackFactory, but it doesn’t work for me. I’m not sure, but PhysX doesn’t support TriangleMesh triggers.

TriangleMesh and HeightField geometries are not supported for trigger shapes

https://docs.nvidia.com/gameworks/content/gameworkslibrary/physx/guide/Manual/RigidBodyCollision.html

So maybe the main reason is working with overlapping by convex collision.

Small update. I found some way to get overlap events from PhysX:

  • Need to override GSimulationFilterShader by your PhysXSimFilterShader.
  • FPhysScene::SimEventCallbackFactory.
    And you can get onContact event between 2 actors.
    But it can work only like OnBeginOverlap. I couldn’t find how to get OnEndOverlap