Replying since this is one of the top results on Google. Is there an elegant solution to this one yet?
If I’m understanding the proposed SweepMultiByChannel solution, I believe that will have the opposite effect, where the trace will be blocked before getting to the actor in all scenarios except where the target is completely visible to the sweep. In other words, if 90% of the target is exposed, the trace will still be blocked by the wall covering the other 10%.
The only way I can think to solve this (with my limited knowledge) is to perform multiple traces around the edges of the target, and consider the target “visible” if at least one hits.