Difficulties with SweepMultiByChannel and storing pointers to hit actors.

SweepMultiByChannel sweeps for ALL overlaps (ie all components), so it’s possible to get the same actor twice through multiple components.

So you could have a custom trace channel for this purpose and make sure it’s assigned to overlap/block only on the root component of the class you are looking for.

Or make a TArray of actor pointers using AddUnique and then make your structs after the sweep is done being sorted (but I don’t know immediately what the most performant variant of that method would be)

1 Like