Chaos::GJKRaycast

Sweeps one geometry against the other The first geometry The second geometry B's starting configuration in A's local space The ray's direction (normalized) The ray's length The time along the ray when the objects first overlap The first point of impact (in A's local space) when the objects first overlap.

Windows
MacOS
Linux

References

Module

Chaos

Header

/Engine/Source/Runtime/Experimental/Chaos/Public/Chaos/GJK.h

Include

#include "Chaos/GJK.h"

Syntax

namespace Chaos
{
    template<typename T, typename TGeometryA, typename TGeometryB>
    bool Chaos::GJKRaycast
    (
        const TGeometryA & A,
        const TGeometryB & B,
        const TRigidTransform< T, 3 > & StartTM,
        const TVector< T, 3 > & RayDir,
        const T RayLength,
        T & OutTime,
        TVector< T, 3 > & OutPosition,
        TVector< T, 3 > & OutNormal,
        const T ThicknessA,
        const TVector< T, 3 > & InitialDir,
        const T ThicknessB
    )
}

Remarks

Sweeps one geometry against the other The first geometry The second geometry B's starting configuration in A's local space The ray's direction (normalized) The ray's length The time along the ray when the objects first overlap The first point of impact (in A's local space) when the objects first overlap. Invalid if time of impact is 0 The impact normal (in A's local space) when the objects first overlap. Invalid if time of impact is 0 The amount of geometry inflation for Geometry A (for example if the surface distance of two geometries with thickness 0 would be 2, a thickness of 0.5 would give a distance of 1.5) The first direction we use to search the CSO The amount of geometry inflation for Geometry B (for example if the surface distance of two geometries with thickness 0 would be 2, a thickness of 0.5 would give a distance of 1.5)

Returns

True if the geometries overlap during the sweep, False otherwise @note If A overlaps B at the start of the ray ("initial overlap" condition) then this function returns true, and sets OutTime = 0, but does not set any other output variables.

Help shape the future of Unreal Engine documentation! Tell us how we're doing so we can serve you better.
Take our survey
Dismiss