Download

How to make linetracebychannel hit certain component in actor?

I have been strugling for a while now to make linetracebychannel hit component in actor, in this case box collision. i can make it only hit the whole actor but not the component in it.

There’s more than one way. How about a tracing channel:

By default this channel is ignored:

But the Small Box is blocking it:

When we trace using that custom channel:

The entities whose collision is set to Ignore, don’t register it; the small box does, though:

I think it does this by default, you just have to take the ‘hit component’ out of the break node.

Here’s another, slightly less known method, albeit somewhat situational:

If you know upfront which component you’ll be tracing against:

Above, the collision is at default setting for both components, no additional channels.

What do you mean? You set the default behaviour when you set up the custom channel in pic 1.

Misunderstood you. I think I know what you mean. But then it would hit the first component encountered, rather than the specific one that we want. Again, this depends on the details of what’s needed.

If you have 15 components, that’d be tiresome. You could play with tags, ofc or even directly compare comps, sure. As I said, there are many, many methods of filtering this.