FPhysxSimEventCallback::OnContact() Error InternalFaceIndex is NULL = heavy & hard identified error for 5 earlier ue4 versions when using simulated bodies

Hi, I would like to repport kind of issue with FPhysxSimEventCallback or PxSimulationEventCallback comming from PhysX… This kind of issue was throwing from earlier versions of Engine (4.16?) i think. “I will mark this bug as very very HEAVY HEAVY bug for me making Physics based Drifting/Racing Engine!”.

This kind of error is ussualy throwing when RigidBody with attached constraints or with high massratio against “lets say parent body” is colliding with Landscape or is overlapping landscape a bit, or one of theese actors have modified maxcontact impulse to lower values which allows Physx to penetrate bodies much less.

I have created own PxSimulationEvent callback and connected to PxScene & many issues has gone & as bonus on other side it provides performance improovements.
library error path: Runtime/Engine/Private/PhysicsEngine/PhysXSupport.cpp
FPhysXSimEventCallback::onContact(…) {



if(!Material1) {
if(PxMateral * Material1PerFace = Shape->getMaterialFromInternalFaceIndex(point.internalFaceIndex1)

{
PhysMat1 = FPhysxUserData::Get(Material1PerFace->userData); —> booom !!! here. //->Material1PerFace is null or cannot read memmory ."
}
}

}

This kind of bug will somethimes throw you directly into the desktop without reason in shippng builds. “very often with many fbodyinstance 's” with shape trying to find way where it is not possible for it.

Possible temporary quidck solution for now would be to make better validity check functtion for it.