Firsly one should know if something should penetrate the other object or not there for we have three posible situations: Blocking or Hit, Overlapping and Ignoring.
Next we need to know who will make the collision happen. To this end we have Object Channels which would allow us to query for objects based purely on their type.
UE4 has a few ‘built in’ Trace Channels (Visibility, Camera) and Object Channels (WorldStatic, WorldDynamic, Pawn, PhysicsBody, Vehicle, Destructible).
We are limited to 32 Trace Channels in total.
In UE4 each object will have its own Object Channel compared to other object’s Object Channel and the engine will chose the least blocking interaction to know what object will block another.