Choose your operating system:
Windows
macOS
Linux
MultiLineTraceForObjects will perform a collision trace along a given line and return all hits encountered, returning only objects that match one of the specified Object Types. Below, you will find steps for setting up a MultiLineTraceForObjects Blueprint.
Steps
Follow the steps used for the LineTraceByChannel example to set up a trace.
Replace the LineTraceByChannel node with the MultiLineTraceForObjects node.
Drag off the Object Types pin and add a Make Array node, then use the drop-down menus to add Objects to the Array.
Here we assign WorldDynamic and Physics Body as our Object Types. You can use the Add pin button to add more Object Types to the Array.
Drag off the Out Hits pin of the trace node and add a ForEachLoop node.
This will allow us to do something for each of the Actors hit by the trace.
Drag off the Array Element and add a Break Hit Result node. Then, drag off the Hit Actor, add a Get Display Name (Object) node and connect to a Print String node.
Click image for a full view.
This will now print to the screen each of the Actors hit by the array.
Result
Here, we have a hanging ceiling light (World Dynamic Object Type) in front of a Physics Actor (Physics Body Object Type).
MultiLineTraceForObjects, unlike MultiLineTracebyChannel, does not stop at the first object it hits, which is why the trace continues through the light to the cube.