Maybe it’s a sign of a really efficient physics engine only having to detect one intersection rather than one per actor.
I haven’t looked at the source code but I would guess all the collision information is passed by reference similar to C#'s out keyword like this, and that goes on to call GetOverlappingActors… maybe, I don’t know for sure.
Meh… sounds a bit ropey to me. It might make some sort of crooked sense in this example, but when you have a lot of stuff going on, you just need to get a list of actors. You don’t need the edited highlights!
I have since replaced it with ComponentOverlapActors, which does work.
I was thinking about this again today, I thought ‘maybe M4g5o is right’… I put 3 of the cubes face to face and asked them to report how many overlaps they were getting.
I got:
Cube1: 1 - ok logical, maybe
Cube2: 0 - could accept this if somehow cube1 had ‘consumed’ the hit
GetOverlappingActors is a little peculiar, it doesn’t ignore parent components and it seems to update slower than ComponentOverlapActors, I would’ve thought they both update on the physics framerate.
I just tested it with triggers and it worked, sleeping rigidbodies are usually the culprit for not triggering. Also it seems overlaps are found on BeginPlay until an Overlap event is created, then BeginPlay stops finding them.