UWorld::AsyncSweepByChannel

Interface for Async trace Pretty much same parameter set except you can optional set delegate to be called when execution is completed and you can set UserData if you'd like if no delegate, you can query trace data using QueryTraceData or QueryOverlapData the data is available only in the next frame after request is made - in other words, if request is made in frame X, you can get the result in frame (X+1)

Choose your operating system:

Windows

macOS

Linux

References

Module

Engine

Header

/Engine/Source/Runtime/Engine/Classes/Engine/World.h

Include

#include "Engine/World.h"

Source

/Engine/Source/Runtime/Engine/Private/Collision/WorldCollisionAsync.cpp

Syntax

FTraceHandle AsyncSweepByChannel
(
    EAsyncTraceType InTraceType,
    const FVector & Start,
    const FVector & End,
    const FQuat & Rot,
    ECollisionChannel TraceChannel,
    const FCollisionShape & CollisionShape,
    const FCollisionQueryParams & Params,
    const FCollisionResponseParams & ResponseParam,
    FTraceDelegate * InDelegate,
    uint32 UserData
)

Remarks

Interface for Async trace Pretty much same parameter set except you can optional set delegate to be called when execution is completed and you can set UserData if you'd like if no delegate, you can query trace data using QueryTraceData or QueryOverlapData the data is available only in the next frame after request is made - in other words, if request is made in frame X, you can get the result in frame (X+1)

FTraceDelegate TraceDelegate; TraceDelegate.BindRaw(this, &MyActor::TraceDone);

Parameters

Parameter

Description

InTraceType

Indicates if you want multiple results, single hit result, or just yes/no (no hit information)

Start

Start location of the shape

End

End location of the shape

TraceChannel

The 'channel' that this trace is in, used to determine which components to hit

CollisionShape

CollisionShape - supports Box, Sphere, Capsule

Params

Additional parameters used for the trace

ResponseParam

ResponseContainer to be used for this trace

InDeleagte

Delegate function to be called - to see example, search FTraceDelegate Example can be void MyActor::TraceDone(const FTraceHandle& TraceHandle, FTraceDatum & TraceData) Before sending to the function,

UserData

UserData