I'm trying to think of practical examples of when one of these is correct over the other.
If this is being used for a physics-type behaviour, and my objects objects are solid then IsOverlapping should never be true.
If I am mimicking a coin collecting scenario (e.g. Super Mario Bros.), then they should be the same, but if the engine is slow and misses the OnCollision event then I guess it would be possible to be overlapping.
Is it fair to say, always use OnOverlapping, as this will not suffer from the case of an OnCollision getting missed?
If not, could anyone suggest practical examples of when one would be correct and the other incorrect?
NB: I'm assuming that it is possible for an OnCollision to be missed due the underlying engine's timings. I could be wrong.