code: [bool](API\Runtime\Chaos\Chaos\Collision\Chaos__Private__bool\1) GetValue ( const int LaneIndex ) const


module: ChaosCore

code: void SetValue ( const int LaneIndex, [bool](API\Runtime\Chaos\Chaos\Collision\Chaos__Private__bool\1) B )


description: 4-wide template specializations

code: template<> [TSimdSelector](API\Runtime\ChaosCore\Chaos\TSimdSelector)< 4 > True()


code: static [TSimdSelector](API\Runtime\ChaosCore\Chaos\TSimdSelector)< TNumLanes > True()


className: TSimdSelector

description: // Replace any non-positive values in R0 with the value from R1 FSim4Selector IsR0GreaterThanZero = SimdGreater(R0, FSimd4Realf::Zero()); R0 = SimdSelect(IsV0GreaterThanZero, R0, R1);

code: template<int TNumLanes> struct TSimdSelector

V

type: float[TNumLanes...


code: [ValueType](API\Runtime\ChaosCore\Chaos\TSimdValue\ValueType) GetValue ( const int32 LaneIndex ) const


code: void SetValue ( const int32 LaneIndex, const [ValueType](API\Runtime\ChaosCore\Chaos\TSimdValue\ValueType) F )


code: void SetValues ( const [ValueType](API\Runtime\ChaosCore\Chaos\TSimdValue\ValueType) F )


className: TSimdValue

description: Used to store any value type in a TNumLanes-wide set. This is used primarily whenyou have non-numeric data that varies per lane. E.g., a pointer to some per-lane shared data.

code: template<typename T, int TNumLanes> struct TSimdValue

type: ValueType[TNumL...


code: [FVec3f](API\Runtime\ChaosCore\Chaos\FVec3f) GetValue ( const int32 LaneIndex ) const


code: static [TSimdVec3f](API\Runtime\ChaosCore\Chaos\TSimdVec3f) Make ( const [FVec3f](API\Runtime\ChaosCore\Chaos\FVec3f) & V )


code: static [TSimdVec3f](API\Runtime\ChaosCore\Chaos\TSimdVec3f) Make ( const [FVec3f](API\Runtime\ChaosCore\Chaos\FVec3f) & V0, const [FVec3f](API\Runtime\ChaosCore\Chaos\FVec3f) & V1, const [FVec3f](API\Runtime\ChaosCore\Chaos\FVec3f) & V2, const [FVec3f](API\Runtime\ChaosCore\Chaos\FVec3f) & V3 )


code: void SetValue ( const int32 LaneIndex, const [FVec3f](API\Runtime\ChaosCore\Chaos\FVec3f) & V )


code: void SetValues ( const [FVec3f](API\Runtime\ChaosCore\Chaos\FVec3f) & V )


code: TSimdVec3f ( const [FVec3f](API\Runtime\ChaosCore\Chaos\FVec3f) & V )


description: FSimd4Vec3f C = SimdCrossProduct(A, B);

code: template<int TNumLanes> struct TSimdVec3f


className: TTrivialDestruct

description: The type needs no destruction and can just be abandoned on free.

code: typedef std::enable_if_t< [TIsTriviallyDestructible](API\Runtime\Core\Templates\TIsTriviallyDestructible)< T >::Value > TTrivialDestruct


code: typedef [TVector](API\Runtime\Chaos\Chaos\TVector)< T, 2 > TVec2


code: typedef [TVector](API\Runtime\Chaos\Chaos\TVector)< T, 3 > TVec3


code: typedef [TVector](API\Runtime\Chaos\Chaos\TVector)< T, 4 > TVec4


className: RequireRangeCheck

code: static const bool RequireRangeCheck = true;


className: TVectorTraits

code: template<class T, int d> struct TVectorTraits


className: TVector< FRealDouble, 2 >::AxisVector

code: static TVector< FRealDouble, 2 > AxisVector &40; const int32 Axis &41;


className: FElement

code: typedef decltype(FVector2d::X) FElement


className: TVector< FRealDouble, 2 >::Max

code: static TVector< FRealDouble, 2 > Max &40; const TVector< FRealDouble, 2 > & V1, const TVector< FRealDouble, 2 > & V2 &41;


code: FRealDouble Max&40;&41; const


className: TVector< FRealDouble, 2 >::MaxAndAxis

code: static Pair< FRealDouble, int32 > MaxAndAxis &40; const TVector< FRealDouble, 2 > & V1, const TVector< FRealDouble, 2 > & V2 &41;


className: TVector< FRealDouble, 2 >::Min

code: FRealDouble Min&40;&41; const


className: TVector< FRealDouble, 2 >::operator/

code: template<class T2> TVector< FRealDouble, 2 > operator&47; &40; const TVector< T2, 2 > & Other &41; const


code: TVector< FRealDouble, 2 > operator&47; &40; const FRealDouble Other &41; const


className: TVector< FRealDouble, 2 >::operator*

code: TVector< FRealDouble, 2 > operator&42; &40; const FRealDouble Other &41; const


code: TVector< FRealDouble, 2 > operator&42; &40; const TVector< FRealDouble, 2 > & Other &41; const


className: TVector< FRealDouble, 2 >::Product

code: FRealDouble Product&40;&41; const


className: TVector< FRealDouble, 2 >::TVector


code: TVector &40; const FVector2d & vec &41;


code: TVector &40; const FRealDouble x &41;


code: template<typename OtherT> TVector &40; const TVector< OtherT, 2 > & InVector &41;


code: TVector &40; const FRealDouble x, const FRealDouble y &41;


className: TVector< FRealDouble, 2 >

code: template<> class TVector< FRealDouble, 2 > : public [UE::Math::TVector2< double >](API\Runtime\Core\Math\TVector2)


className: TVector< FRealDouble, 3 >::AngleBetween

code: static FRealDouble AngleBetween &40; const TVector< FRealDouble, 3 > & V1, const TVector< FRealDouble, 3 > & V2 &41;


className: TVector< FRealDouble, 3 >::AxisVector

code: static TVector< FRealDouble, 3 > AxisVector &40; const int32 Axis &41;


className: TVector< FRealDouble, 3 >::ComponentwiseMax

code: TVector< FRealDouble, 3 > ComponentwiseMax &40; const TVector< FRealDouble, 3 > & Other &41; const


className: TVector< FRealDouble, 3 >::CalculateVelocity

description: Calculate the velocity to move from P0 to P1 in time Dt. Exists just for symmetry with TRotation::CalculateAngularVelocity!

code: static TVector< FRealDouble, 3 > CalculateVelocity &40; const TVector< FRealDouble, 3 > & P0, const TVector< FRealDouble, 3 > & P1, const FRealDouble Dt &41;


className: TVector< FRealDouble, 3 >::ComponentwiseMin

code: TVector< FRealDouble, 3 > ComponentwiseMin &40; const TVector< FRealDouble, 3 > & Other &41; const


className: TVector< FRealDouble, 3 >::CrossProduct

code: static TVector< FRealDouble, 3 > CrossProduct &40; const TVector< FRealDouble, 3 > & V1, const TVector< FRealDouble, 3 > & V2 &41;


className: TVector< FRealDouble, 3 >::DotProduct

code: static FRealDouble DotProduct &40; const TVector< FRealDouble, 3 > & V1, const TVector< FRealDouble, 3 > & V2 &41;


code: typedef FRealDouble FElement


className: TVector< FRealDouble, 3 >::GetOrthogonalVector

code: TVector< FRealDouble, 3 > GetOrthogonalVector&40;&41; const


className: TVector< FRealDouble, 3 >::IsNearlyEqual

code: static bool IsNearlyEqual &40; const TVector< FRealDouble, 3 > & A, const TVector< FRealDouble, 3 > & B, const FRealDouble Epsilon &41;


className: TVector< FRealDouble, 3 >::Lerp

code: static TVector< FRealDouble, 3 > Lerp &40; const TVector< FRealDouble, 3 > & V1, const TVector< FRealDouble, 3 > & V2, const FRealDouble F &41;


className: TVector< FRealDouble, 3 >::Max

code: FRealDouble Max&40;&41; const


code: static TVector< FRealDouble, 3 > Max &40; const TVector< FRealDouble, 3 > & V1, const TVector< FRealDouble, 3 > & V2 &41;


className: TVector< FRealDouble, 3 >::MaxAndAxis

code: static Pair< FRealDouble, int32 > MaxAndAxis &40; const TVector< FRealDouble, 3 > & V1, const TVector< FRealDouble, 3 > & V2 &41;


className: TVector< FRealDouble, 3 >::MaxAxis

code: int32 MaxAxis&40;&41; const


className: TVector< FRealDouble, 3 >::Mid

code: FRealDouble Mid&40;&41; const


className: TVector< FRealDouble, 3 >::Min

code: FRealDouble Min&40;&41; const


className: TVector< FRealDouble, 3 >::operator+

code: TVector< FRealDouble, 3 > operator&43; &40; const FRealDouble Other &41; const


code: TVector< FRealDouble, 3 > operator&43; &40; const TVector< FRealDouble, 3 > & Other &41; const


code: template<class T2> TVector< FRealDouble, 3 > operator&43; &40; const TVector< T2, 3 > & Other &41; const


className: TVector< FRealDouble, 3 >::operator>=

code: bool operator>&61; &40; const TVector< FRealDouble, 3 > & V &41; const


className: TVector< FRealDouble, 3 >::operator<=

code: bool operator<&61; &40; const TVector< FRealDouble, 3 > & V &41; const


className: TVector< FRealDouble, 3 >::operator/

code: TVector< FRealDouble, 3 > operator&47; &40; const FRealDouble Other &41; const


code: TVector< FRealDouble, 3 > operator&47; &40; const TVector< FRealDouble, 3 > & Other &41; const


code: template<class T2> TVector< FRealDouble, 3 > operator&47; &40; const TVector< T2, 3 > & Other &41; const


className: TVector< FRealDouble, 3 >::operator*

code: TVector< FRealDouble, 3 > operator&42; &40; const FRealDouble Other &41; const


code: TVector< FRealDouble, 3 > operator&42; &40; const TVector< FRealDouble, 3 > & Other &41; const


code: template<class T2> TVector< FRealDouble, 3 > operator&42; &40; const TVector< T2, 3 > & Other &41; const


className: TVector< FRealDouble, 3 >::operator-

code: TVector< FRealDouble, 3 > operator&45;&40;&41; const


code: TVector< FRealDouble, 3 > operator&45; &40; const FRealDouble Other &41; const


code: TVector< FRealDouble, 3 > operator&45; &40; const TVector< FRealDouble, 3 > & Other &41; const


code: template<class T2> TVector< FRealDouble, 3 > operator&45; &40; const TVector< T2, 3 > & Other &41; const


className: TVector< FRealDouble, 3 >::SafeNormalize

code: FRealDouble SafeNormalize &40; FRealDouble Epsilon &41;


className: TVector< FRealDouble, 3 >::Product

code: FRealDouble Product&40;&41; const


className: TVector< FRealDouble, 3 >::TVector


code: TVector &40; const FRealDouble x &41;


code: TVector &40; const UE::Math::TVector< FRealSingle > & vec &41;


code: TVector &40; const UE::Math::TVector< FRealDouble > & vec &41;


code: TVector &40; const FVector4 & vec &41;


code: TVector &40; const FRealDouble x, const FRealDouble y, const FRealDouble z &41;


className: TVector< FRealDouble, 3 >

code: template<> class TVector< FRealDouble, 3 > : public [UE::Math::TVector< FRealDouble >](API\Runtime\Core\Math\TVector)


className: TVector< FRealSingle, 2 >::AxisVector

code: static TVector< FRealSingle, 2 > AxisVector &40; const int32 Axis &41;


className: FElement

code: typedef decltype(FVector2f::X) FElement


className: TVector< FRealSingle, 2 >::Max

code: FRealSingle Max&40;&41; const


code: static TVector< FRealSingle, 2 > Max &40; const TVector< FRealSingle, 2 > & V1, const TVector< FRealSingle, 2 > & V2 &41;


className: TVector< FRealSingle, 2 >::MaxAndAxis

code: static Pair< FRealSingle, int32 > MaxAndAxis &40; const TVector< FRealSingle, 2 > & V1, const TVector< FRealSingle, 2 > & V2 &41;


className: TVector< FRealSingle, 2 >::Min

code: FRealSingle Min&40;&41; const


className: TVector< FRealSingle, 2 >::operator/

code: template<class T2> TVector< FRealSingle, 2 > operator&47; &40; const TVector< T2, 2 > & Other &41; const


code: TVector< FRealSingle, 2 > operator&47; &40; const FRealSingle Other &41; const


className: TVector< FRealSingle, 2 >::operator*

code: TVector< FRealSingle, 2 > operator&42; &40; const FRealSingle Other &41; const


code: TVector< FRealSingle, 2 > operator&42; &40; const TVector< FRealSingle, 2 > & Other &41; const


className: TVector< FRealSingle, 2 >::Product

code: FRealSingle Product&40;&41; const


className: TVector< FRealSingle, 2 >::TVector


code: TVector &40; const FRealSingle x &41;


code: TVector &40; const FVector2f & vec &41;


code: template<typename OtherT> TVector &40; const TVector< OtherT, 2 > & InVector &41;


code: TVector &40; const FRealSingle x, const FRealSingle y &41;


className: TVector< FRealSingle, 2 >

code: template<> class TVector< FRealSingle, 2 > : public [UE::Math::TVector2< float >](API\Runtime\Core\Math\TVector2)


className: TVector< FRealSingle, 3 >::AngleBetween

code: static FRealSingle AngleBetween &40; const TVector< FRealSingle, 3 > & V1, const TVector< FRealSingle, 3 > & V2 &41;


className: TVector< FRealSingle, 3 >::AxisVector

code: static TVector< FRealSingle, 3 > AxisVector &40; const int32 Axis &41;


className: TVector< FRealSingle, 3 >::CalculateVelocity

code: static TVector< FRealSingle, 3 > CalculateVelocity &40; const TVector< FRealSingle, 3 > & P0, const TVector< FRealSingle, 3 > & P1, const FRealSingle Dt &41;


className: TVector< FRealSingle, 3 >::ComponentwiseMax

code: TVector< FRealSingle, 3 > ComponentwiseMax &40; const TVector< FRealSingle, 3 > & Other &41; const


className: TVector< FRealSingle, 3 >::ComponentwiseMin

code: TVector< FRealSingle, 3 > ComponentwiseMin &40; const TVector< FRealSingle, 3 > & Other &41; const


className: TVector< FRealSingle, 3 >::CrossProduct

code: static TVector< FRealSingle, 3 > CrossProduct &40; const TVector< FRealSingle, 3 > & V1, const TVector< FRealSingle, 3 > & V2 &41;


className: TVector< FRealSingle, 3 >::DotProduct

code: static FRealSingle DotProduct &40; const TVector< FRealSingle, 3 > & V1, const TVector< FRealSingle, 3 > & V2 &41;


code: typedef FRealSingle FElement


className: TVector< FRealSingle, 3 >::GetOrthogonalVector

code: TVector< FRealSingle, 3 > GetOrthogonalVector&40;&41; const


className: TVector< FRealSingle, 3 >::IsNearlyEqual

code: static bool IsNearlyEqual &40; const TVector< FRealSingle, 3 > & A, const TVector< FRealSingle, 3 > & B, const FRealSingle Epsilon &41;


className: TVector< FRealSingle, 3 >::Lerp

code: static TVector< FRealSingle, 3 > Lerp &40; const TVector< FRealSingle, 3 > & V1, const TVector< FRealSingle, 3 > & V2, const FRealSingle F &41;


className: TVector< FRealSingle, 3 >::Max

code: FRealSingle Max&40;&41; const


code: static TVector< FRealSingle, 3 > Max &40; const TVector< FRealSingle, 3 > & V1, const TVector< FRealSingle, 3 > & V2 &41;


className: TVector< FRealSingle, 3 >::MaxAndAxis

code: static Pair< FRealSingle, int32 > MaxAndAxis &40; const TVector< FRealSingle, 3 > & V1, const TVector< FRealSingle, 3 > & V2 &41;


className: TVector< FRealSingle, 3 >::Mid

code: FRealSingle Mid&40;&41; const


className: TVector< FRealSingle, 3 >::MaxAxis

code: int32 MaxAxis&40;&41; const


className: TVector< FRealSingle, 3 >::Min

code: FRealSingle Min&40;&41; const


className: TVector< FRealSingle, 3 >::operator+

code: TVector< FRealSingle, 3 > operator&43; &40; const FRealSingle Other &41; const


code: TVector< FRealSingle, 3 > operator&43; &40; const TVector< FRealSingle, 3 > & Other &41; const


code: template<class T2> TVector< FRealSingle, 3 > operator&43; &40; const TVector< T2, 3 > & Other &41; const


className: TVector< FRealSingle, 3 >::operator>=

code: bool operator>&61; &40; const TVector< FRealSingle, 3 > & V &41; const


className: TVector< FRealSingle, 3 >::operator<=

code: bool operator<&61; &40; const TVector< FRealSingle, 3 > & V &41; const


className: TVector< FRealSingle, 3 >::operator/

code: TVector< FRealSingle, 3 > operator&47; &40; const FRealSingle Other &41; const


code: template<class T2> TVector< FRealSingle, 3 > operator&47; &40; const TVector< T2, 3 > & Other &41; const


code: TVector< FRealSingle, 3 > operator&47; &40; const TVector< FRealSingle, 3 > & Other &41; const


className: TVector< FRealSingle, 3 >::operator*

code: TVector< FRealSingle, 3 > operator&42; &40; const FRealSingle Other &41; const


code: TVector< FRealSingle, 3 > operator&42; &40; const TVector< FRealSingle, 3 > & Other &41; const


code: template<class T2> TVector< FRealSingle, 3 > operator&42; &40; const TVector< T2, 3 > & Other &41; const


className: TVector< FRealSingle, 3 >::operator-

code: TVector< FRealSingle, 3 > operator&45;&40;&41; const


code: TVector< FRealSingle, 3 > operator&45; &40; const TVector< FRealSingle, 3 > & Other &41; const


code: template<class T2> TVector< FRealSingle, 3 > operator&45; &40; const TVector< T2, 3 > & Other &41; const


code: TVector< FRealSingle, 3 > operator&45; &40; const FRealSingle Other &41; const


className: TVector< FRealSingle, 3 >::SafeNormalize

code: FRealSingle SafeNormalize &40; FRealSingle Epsilon &41;


className: TVector< FRealSingle, 3 >::Product

code: FRealSingle Product&40;&41; const


className: TVector< FRealSingle, 3 >::TVector


code: TVector &40; const FRealSingle x &41;


code: TVector &40; const UE::Math::TVector< FRealSingle > & vec &41;


code: TVector &40; const UE::Math::TVector< FRealDouble > & vec &41;


code: TVector &40; const UE::Math::TVector4< FRealSingle > & vec &41;


code: TVector &40; const UE::Math::TVector4< FRealDouble > & vec &41;


code: TVector &40; const FRealSingle x, const FRealSingle y, const FRealSingle z &41;


className: TVector< FRealSingle, 3 >

code: template<> class TVector< FRealSingle, 3 > : public [UE::Math::TVector< FRealSingle >](API\Runtime\Core\Math\TVector)


className: BaseType

code: typedef UE::Math::TVector4< FReal > BaseType


className: TVector< FReal, 4 >::TVector

code: TVector &40; const FReal x &41;


code: TVector &40; const BaseType & vec &41;


code: TVector &40; const FReal x, const FReal y, const FReal z, const FReal w &41;


className: TVector< FReal, 4 >

code: template<> class TVector< FReal, 4 > : public [UE::Math::TVector4< FReal >](API\Runtime\Core\Math\TVector4)


className: TVector< int32, 2 >::AxisVector

code: static TVector< FElement, 2 > AxisVector &40; const int32 Axis &41;


className: TVector< int32, 2 >::Num

code: int32 Num&40;&41; const


className: TVector< int32, 2 >::operator+

code: TVector< FElement, 2 > operator&43; &40; const TVector< FElement, 2 > & Other &41; const


className: TVector< int32, 2 >::operator+=

code: TVector< FElement, 2 > & operator&43;&61; &40; const TVector< FElement, 2 > & Other &41;


className: TVector< int32, 2 >::operator=

code: TVector & operator&61; &40; const TVector & &41;


code: template<typename OtherT> TVector< int32, 2 > & operator&61; &40; const TVector< OtherT, 2 > & Other &41;


className: TVector< int32, 2 >::operator/

code: TVector< FElement, 2 > operator&47; &40; const TVector< FElement, 2 > & Other &41; const


className: TVector< int32, 2 >::operator/=

code: TVector< FElement, 2 > & operator&47;&61; &40; const TVector< FElement, 2 > & Other &41;


className: TVector< int32, 2 >::operator*

code: TVector< FElement, 2 > operator&42; &40; const TVector< FElement, 2 > & Other &41; const


code: TVector< FElement, 2 > operator&42; &40; const FElement & S &41; const


className: TVector< int32, 2 >::operator*=

code: TVector< FElement, 2 > & operator&42;&61; &40; const FElement & S &41;


className: TVector< int32, 2 >::operator-

code: TVector< FElement, 2 > operator&45;&40;&41; const


code: TVector< FElement, 2 > operator&45; &40; const TVector< FElement, 2 > & Other &41; const


className: TVector< int32, 2 >::operator[]

code: PRAGMA_DISABLE_DEPRECATION_WARNINGSFElement operator&91;&93; &40; const int32 Idx &41; const


className: TVector< int32, 2 >::operator-=

code: TVector< FElement, 2 > & operator&45;&61; &40; const TVector< FElement, 2 > & Other &41;


code: FElement & operator&91;&93; &40; const int32 Idx &41;


className: TVector< int32, 2 >::Product

code: FElement Product&40;&41; const


className: TVector< int32, 2 >::TVector

code: PRAGMA_DISABLE_DEPRECATION_WARNINGS TVector &40; const TVector & &41;


code: TVector &40; const FElement InX &41;


code: template<typename OtherT> TVector &40; const TVector< OtherT, 2 > & InVector &41;


code: TVector &40; const FElement InX, const FElement InY &41;


className: TVector< int32, 2 >

code: template<> class TVector< int32, 2 >

X

type: FElement


className: TVector< T, 3 >::AxisVector

code: static TVector< T, 3 > AxisVector &40; const int32 Axis &41;


className: TVector< T, 3 >::ComponentwiseMax

code: TVector< T, 3 > ComponentwiseMax &40; const TVector< T, 3 > & Other &41; const


className: TVector< T, 3 >::ComponentwiseMin

code: TVector< T, 3 > ComponentwiseMin &40; const TVector< T, 3 > & Other &41; const


className: TVector< T, 3 >::ContainsNaN

code: bool ContainsNaN&40;&41; const


className: TVector< T, 3 >::Min

code: T Min&40;&41; const


className: TVector< T, 3 >::Max

code: T Max&40;&41; const


className: TVector< T, 3 >::GetSafeNormal

code: TVector< T, 3 > GetSafeNormal&40;&41; const


className: TVector< T, 3 >::Mid

code: T Mid&40;&41; const


className: TVector< T, 3 >::Num

code: int32 Num&40;&41; const


className: TVector< T, 3 >::operator+

code: TVector< T, 3 > operator&43; &40; const TVector< T, 3 > & Other &41; const


code: TVector< T, 3 > operator&43; &40; const T Scalar &41; const


className: TVector< T, 3 >::operator+=

code: TVector< T, 3 > & operator&43;&61; &40; const TVector< T, 3 > & Other &41;


className: TVector< T, 3 >::operator=

code: TVector & operator&61; &40; const TVector & &41;


code: template<class T2> TVector< T, 3 > & operator&61; &40; const TVector< T2, 3 > & Other &41;


className: TVector< T, 3 >::operator==

code: bool operator&61;&61; &40; const TVector< T, 3 > & Other &41; const


className: TVector< T, 3 >::operator/

code: TVector< T, 3 > operator&47; &40; const TVector< T, 3 > & Other &41; const


code: TVector< T, 3 > operator&47; &40; const T Scalar &41; const


className: TVector< T, 3 >::operator/=

code: TVector< T, 3 > & operator&47;&61; &40; const TVector< T, 3 > & Other &41;


className: TVector< T, 3 >::operator*

code: TVector< T, 3 > operator&42; &40; const TVector< T, 3 > & Other &41; const


code: TVector< T, 3 > operator&42; &40; const T S &41; const


className: TVector< T, 3 >::operator-

code: TVector< T, 3 > operator&45;&40;&41; const


code: TVector< T, 3 > operator&45; &40; const TVector< T, 3 > & Other &41; const


code: TVector< T, 3 > operator&45; &40; const T Scalar &41; const


className: TVector< T, 3 >::operator[]

code: PRAGMA_DISABLE_DEPRECATION_WARNINGS T operator&91;&93; &40; int32 Idx &41; const


className: TVector< T, 3 >::Product

code: T Product&40;&41; const


className: TVector< T, 3 >::operator-=

code: TVector< T, 3 > & operator&45;&61; &40; const TVector< T, 3 > & Other &41;


className: TVector< T, 3 >::SafeNormalize

code: T SafeNormalize&40;&41;


className: TVector< T, 3 >::operator*=

code: TVector< T, 3 > & operator&42;&61; &40; const T S &41;


className: TVector< T, 3 >::Size

code: T Size&40;&41; const


className: TVector< T, 3 >::SizeSquared

code: T SizeSquared&40;&41; const


className: TVector< T, 3 >::TVector

code: PRAGMA_DISABLE_DEPRECATION_WARNINGS TVector &40; const TVector & &41;


code: TVector &40; T InX &41;


code: template<class T2> TVector &40; const TVector< T2, 3 > & Other &41;


code: TVector &40; const UE::Math::TVector< FReal > & Other &41;


code: TVector &40; T InX, T InY, T InZ &41;


className: TVector< T, 3 >

code: template<class T> class TVector< T, 3 >

type: T


className: VectorND

code: template<class T> class VectorND : public [TArray< T >](API\Runtime\Core\Containers\TArray)


description: FModuleManager::Get().LoadModuleChecked(TEXT("HTTP"));

code: virtual void StartupModule()


description: Called before the module is unloaded, right before the module object is destroyed. During normal shutdown, this is called in reverse order that modules finishStartupModule(). This means that, as long as a module references dependent modules in it'sStartupModule(), it can safely reference those dependencies inShutdownModule()as well.

code: virtual void ShutdownModule()


className: FChaosCoreEngineModule

code: class FChaosCoreEngineModule : public [IModuleInterface](API\Runtime\Core\Modules\IModuleInterface)


description: Overridable native event for when play begins for this actor.

module: ChaosSolverEngine

code: virtual void BeginPlay()


description: Overridable function called whenever this actor is being removed from a level

code: virtual void EndPlay ( const [EEndPlayReason::Type](API\Runtime\Engine\Engine\EEndPlayReason__Type) EndPlayReason )


code: [Chaos::FPhysicsSolver](API\Runtime\Chaos\Chaos\FPhysicsSolver) * GetSolver() const


code: [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FPhysScene_Chaos](API\Runtime\Engine\Physics\Experimental\FPhysScene_Chaos) > GetPhysicsScene() const


code: virtual void PostDuplicate ( [EDuplicateMode::Type](API\Runtime\CoreUObject\UObject\EDuplicateMode__Type) DuplicateMode )


description: UObjectinterface

code: virtual void PostEditChangeProperty ( struct [FPropertyChangedEvent](API\Runtime\CoreUObject\UObject\FPropertyChangedEvent) & PropertyChangedEvent )


description: Called after all the components in the Components array are registered, called both in editor and during gameplay. bHasRegisteredAllComponents must be set true prior to calling this function.


description: Do any object-specific cleanup required immediately after loading an object. This is not called for newly-created objects, and by default will always execute on the game thread.

code: virtual void PostLoad()


description: Called right before components are initialized, only called during gameplay

code: virtual void PreInitializeComponents()


description: Handles reading, writing, and reference collecting usingFArchive. This implementation handles allFPropertyserialization, but can be overridden for native variables.

code: virtual void Serialize ( [FArchive](API\Runtime\Core\Serialization\FArchive) & Ar )


description: Makes this solver the current world solver. Dynamically spawned objects will have their physics state created in this solver.

code: void SetAsCurrentWorldSolver()


description: Controls whether the solver is able to simulate particles it controls

code: virtual void SetSolverActive ( bool bActive )


code: AChaosSolverActor ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


className: AChaosSolverActor

code: class AChaosSolverActor : public [AActor](API\Runtime\Engine\GameFramework\AActor)

bHasFloor

type: bool

description: End deprecated properties

ChaosDebugSubstepControl

type: FChaosDebugSubs...

description: Control to pause/step/substep the solver to the next synchronization point.

FloorHeight

type: float

Properties

type: FChaosSolverCon...

SpriteComponent

type: TObjectPtr<UBi...

description: Display icon in the editor


className: FBreakEventCallbackWrapper

description: UStructwrapper so we can store theTFunctionin aTMap

code: struct FBreakEventCallbackWrapper

BreakEventCallback

type: FOnBreakEventCa...


code: FChaosDebugSubstepControl()


className: FChaosDebugSubstepControl

code: struct FChaosDebugSubstepControl

bPause

description: Pause the solver at the next synchronization point.

bStep

description: Step the solver to the next synchronization point.

bSubstep

description: Substep the solver to the next synchronization point.

OnPauseChanged

type: FSimpleDelegate


className: FChaosHandlerSet

description: UStructwrapper so we can store theTSetin aTMap

code: struct FChaosHandlerSet

ChaosHandlers

type: TSet<TObjectPt...

description: These should beIChaosNotifyHandlerInterfacerefs, but we can't store those here


className: FChaosPendingCollisionNotify

code: struct FChaosPendingCollisionNotify

CollisionInfo

type: FChaosPhysicsCo...


code: FChaosPhysicsCollisionInfo()


className: FChaosPhysicsCollisionInfo

code: struct FChaosPhysicsCollisionInfo

AccumulatedImpulse

type: FVector

Component

type: TObjectPtr<UPr...

Location

description: Location of the impact

Normal

description: Normal at the impact


className: FCrumblingEventCallbackWrapper

code: struct FCrumblingEventCallbackWrapper

CrumblingEventCallback

type: FOnCrumblingEve...


className: FOnChaosPhysicsCollision

code: class FOnChaosPhysicsCollision


className: FRemovalEventCallbackWrapper

code: struct FRemovalEventCallbackWrapper

RemovalEventCallback

type: FOnRemovalEvent...


description: Implementing classes should override to dispatch whatever blueprint events they choose to offer

code: virtual void DispatchChaosPhysicsCollisionBlueprintEvents ( const [FChaosPhysicsCollisionInfo](API\Runtime\ChaosSolverEngine\Chaos\FChaosPhysicsCollisionInfo) & CollisionInfo )


description: Entry point for collision notifications, called by the underlying system. Not for overriding.

code: void HandlePhysicsCollision ( const [FChaosPhysicsCollisionInfo](API\Runtime\ChaosSolverEngine\Chaos\FChaosPhysicsCollisionInfo) & CollisionInfo )


description: Override for native handling of a physics collision

code: virtual void NotifyPhysicsCollision ( const [FChaosPhysicsCollisionInfo](API\Runtime\ChaosSolverEngine\Chaos\FChaosPhysicsCollisionInfo) & CollisionInfo )


className: IChaosNotifyHandlerInterface

code: class IChaosNotifyHandlerInterface : public [IInterface](API\Runtime\CoreUObject\UObject\IInterface)


description:
Checks to see if this module is loaded and ready. It is only valid to callGet()ifIsAvailable()returns true.
True if the module is loaded and ready to use

code: static bool IsAvailable()


className: IChaosSolverEnginePlugin

description: The public interface to this module

code: class IChaosSolverEnginePlugin : public [IModuleInterface](API\Runtime\Core\Modules\IModuleInterface)


description: Called before destroying the object. This is called immediately upon deciding to destroy the object, to allow the object to begin an asynchronous cleanup process.

code: virtual void BeginDestroy()


code: static void BindWorldDelegates()


description: Ends gameplay for this component. Called fromAActor::EndPlayonly if bHasBegunPlay is true

code: virtual void EndPlay ( const [EEndPlayReason::Type](API\Runtime\Engine\Engine\EEndPlayReason__Type) EndPlayReason )


description: Function called every frame on this ActorComponent. Override this function to implement custom logic to be executed every frame. Only executes if the component is registered, and also PrimaryComponentTick.bCanEverTick must be set to true.

code: virtual void TickComponent ( float DeltaTime, enum ELevelTick TickType, [FActorComponentTickFunction](API\Runtime\Engine\Engine\FActorComponentTickFunction) * ThisTickFunction )


description:
Singleton-like access to this module's interface. This is just for convenience! Beware of calling this during the shutdown phase, though. Your module might have been unloaded already.
Returns singleton instance, loading the module on demand if needed

code: static [IChaosSolverEnginePlugin](API\Runtime\ChaosSolverEngine\Chaos\IChaosSolverEnginePlugin) & Get()


code: UChaosDebugDrawComponent()


className: UChaosDebugDrawComponent

code: class UChaosDebugDrawComponent : public [UActorComponent](API\Runtime\Engine\Components\UActorComponent)


description: Begins Play for the component. Called when the owning Actor begins play or when the component is created if the Actor has already begun play. Actor BeginPlay normally happens right after PostInitializeComponents but can be delayed for networked or child actors. Requires component to be registered and initialized.

code: virtual void BeginPlay()


code: UChaosEventListenerComponent()


className: UChaosEventListenerComponent

description: Base class for listeners that query and respond to a frame's physics data (collision events, break events, etc).

code: class UChaosEventListenerComponent : public [UActorComponent](API\Runtime\Engine\Components\UActorComponent)

LastCollisionTickTime

description: Used to know when the physics thread has updated the collision info for processing on the game thread


description: Called when a component is registered, after Scene is set, but before CreateRenderState_Concurrent or OnCreatePhysicsState are called.

code: virtual void OnRegister()


description: Called when a component is unregistered. Called after DestroyRenderState_Concurrent and OnDestroyPhysicsState are called.

code: virtual void OnUnregister()


code: void RegisterChaosEvents()


code: void RegisterForBreakEvents ( [UPrimitiveComponent](API\Runtime\Engine\Components\UPrimitiveComponent) * Component, FOnBreakEventCallback InFunc )


description: Use to subscribe to collision events.

code: void RegisterForCollisionEvents ( [UPrimitiveComponent](API\Runtime\Engine\Components\UPrimitiveComponent) * ComponentToListenTo, [UObject](API\Runtime\CoreUObject\UObject\UObject) * ObjectToNotify )


code: void RegisterForCrumblingEvents ( [UPrimitiveComponent](API\Runtime\Engine\Components\UPrimitiveComponent) * Component, FOnCrumblingEventCallback InFunc )


code: void RegisterForRemovalEvents ( [UPrimitiveComponent](API\Runtime\Engine\Components\UPrimitiveComponent) * Component, FOnRemovalEventCallback InFunc )


code: void UnregisterChaosEvents()


code: void UnRegisterForBreakEvents ( [UPrimitiveComponent](API\Runtime\Engine\Components\UPrimitiveComponent) * Component )


description: Use to subscribe to collision events.

code: void UnRegisterForCollisionEvents ( [UPrimitiveComponent](API\Runtime\Engine\Components\UPrimitiveComponent) * ComponentToListenTo, [UObject](API\Runtime\CoreUObject\UObject\UObject) * ObjectToNotify )


code: void UnRegisterForCrumblingEvents ( [UPrimitiveComponent](API\Runtime\Engine\Components\UPrimitiveComponent) * Component )


code: void UnRegisterForRemovalEvents ( [UPrimitiveComponent](API\Runtime\Engine\Components\UPrimitiveComponent) * Component )


code: UChaosGameplayEventDispatcher()


className: UChaosGameplayEventDispatcher

code: class UChaosGameplayEventDispatcher : public [UChaosEventListenerComponent](API\Runtime\ChaosSolverEngine\Chaos\UChaosEventListenerComponent)


code: UChaosNotifyHandlerInterface ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


className: UChaosNotifyHandlerInterface

description: Interface for objects that want collision and trailing notifies from the Chaos solver

code: class UChaosNotifyHandlerInterface : public [UInterface](API\Runtime\CoreUObject\UObject\UInterface)


code: UChaosSolver ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


className: UChaosSolver

description: UChaosSolver(UObject)

code: class UChaosSolver : public [UObject](API\Runtime\CoreUObject\UObject\UObject)


code: static [FHitResult](API\Runtime\Engine\Engine\FHitResult) ConvertPhysicsCollisionToHitResult ( const [FChaosPhysicsCollisionInfo](API\Runtime\ChaosSolverEngine\Chaos\FChaosPhysicsCollisionInfo) & PhysicsCollision )


className: UChaosSolverEngineBlueprintLibrary

code: class UChaosSolverEngineBlueprintLibrary : public [UBlueprintFunctionLibrary](API\Runtime\Engine\Kismet\UBlueprintFunctionLibrary)


code: virtual [UClass](API\Runtime\CoreUObject\UObject\UClass) * GetSolverActorClass() const


description: UObjectinterface

code: virtual void PostEditChangeProperty ( [FPropertyChangedEvent](API\Runtime\CoreUObject\UObject\FPropertyChangedEvent) & PropertyChangedEvent )


description: Called after the C++ constructor and after the properties have been initialized, including those loaded from config. This is called before any serialization or other setup has happened.

code: virtual void PostInitProperties()


description: Called from ReloadConfig after the object has reloaded its configuration data.

code: virtual void PostReloadConfig ( class [FProperty](API\Runtime\CoreUObject\UObject\FProperty) * PropertyThatWasLoaded )


className: UChaosSolverSettings

description: Settings class for the Chaos Solver

code: class UChaosSolverSettings : public [UDeveloperSettings](API\Runtime\DeveloperSettings\Engine\UDeveloperSettings), public [IChaosSolverActorClassProvider](API\Runtime\Chaos\IChaosSolverActorClassProvider)

DefaultChaosSolverActorClass

type: FSoftClassPath

description: The class to use when auto-creating a default chaos solver actor


className: FChaosVDDataModule

module: ChaosVDData

code: class FChaosVDDataModule : public [IModuleInterface](API\Runtime\Core\Modules\IModuleInterface)


className: FChaosVDGameFrameData

code: struct FChaosVDGameFrameData


description: Adds a Solver Frame Data entry for a specific Solver ID. Creates a solver entry if it does not exist

code: void AddFrameForSolver ( const int32 SolverID, [FChaosVDSolverFrameData](API\Runtime\ChaosVDData\FChaosVDSolverFrameData) && InFrameData )


description: Adds a Game Frame Data entry. Creates a solver entry if it does not exist

code: void AddGameFrameData ( [FChaosVDGameFrameData](API\Runtime\ChaosVDData\FChaosVDGameFrameData) && InFrameData )


description: Adds a shared Implicit Object to the recording

code: void AddImplicitObject ( const uint32 ID, const [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [Chaos::FImplicitObject](API\Runtime\Chaos\Chaos\FImplicitObject) > & InImplicitObject )


description: Adds an Implicit Object to the recording and takes ownership of it

code: void AddImplicitObject ( const uint32 ID, const [Chaos::FImplicitObject](API\Runtime\Chaos\Chaos\FImplicitObject) * InImplicitObject )


code: void AddImplicitObject_Internal ( const uint32 ID, const [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< const [Chaos::FImplicitObject](API\Runtime\Chaos\Chaos\FImplicitObject) > & InImplicitObject )


description: Stores a frame number of a solver that is a Key Frame - These are used when scrubbing to make sure the visualization is in sync with what was recorded

code: void AddKeyFrameNumberForSolver ( int32 SolverID, int32 FrameNumber )


code: int32 FindFirstSolverKeyFrameNumberFromFrame ( int32 SolverID, int32 StartFrameNumber )


description: Returns a reference to the array holding all the available game frames

code: const [TArray](API\Runtime\Core\Containers\TArray)< [FChaosVDGameFrameData](API\Runtime\ChaosVDData\FChaosVDGameFrameData) > & GetAvailableGameFrames() const


description: Returns the current available Game Frames


description: Returns the number of available frame data for the specified solver ID

code: int32 GetAvailableSolverFramesNumber ( int32 SolverID ) const


description: Gathers all available solvers IDs at the given Game frame number

code: void GetAvailableSolverIDsAtGameFrameNumber ( int32 FrameNumber, [TArray](API\Runtime\Core\Containers\TArray)< int32 > & OutSolversID )


description: Returns a reference to the map containing the available solver data

code: const [TMap](API\Runtime\Core\Containers\TMap)< int32, [TArray](API\Runtime\Core\Containers\TArray)< [FChaosVDSolverFrameData](API\Runtime\ChaosVDData\FChaosVDSolverFrameData) > > & GetAvailableSolvers() const


description: Returns the current available recorded solvers number

code: int32 GetAvailableSolversNumber() const


description:
Searches for a recorded Game frame at the specified cycle
A ptr to the recorded game frame data - This is a ptr to the array element. Do not store

code: [FChaosVDGameFrameData](API\Runtime\ChaosVDData\FChaosVDGameFrameData) * GetGameFrameData ( int32 FrameNumber )


code: [FChaosVDGameFrameData](API\Runtime\ChaosVDData\FChaosVDGameFrameData) * GetGameFrameDataAtCycle ( uint64 Cycle )


description: Returns a reference to the GeometryID-ImplicitObject map of this recording

code: const [TMap](API\Runtime\Core\Containers\TMap)< uint32, [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< const [Chaos::FImplicitObject](API\Runtime\Chaos\Chaos\FImplicitObject) > > & GetGeometryDataMap() const


description: Returns a ptr to the last recorded game frame - This is a ptr to the array element. Do not store


description:
Searches and returns the lowest game frame number at the specified solver frame
Found Game frame number. INDEX_NONE if no frame is found for the specified cycle

code: int32 GetLowestGameFrameAtSolverFrameNumber ( int32 SolverID, int32 SolverFrame )


description:
Searches and returns the lowest game frame number at the specified cycle
Found Game frame number. INDEX_NONE if no frame is found for the specified cycle

code: int32 GetLowestGameFrameNumberAtCycle ( uint64 Cycle )


description:
Searches and returns the lowest frame number of a solver at the specified cycle
Found frame number. INDEX_NONE if no frame is found for the specified cycle

code: int32 GetLowestSolverFrameNumberAtCycle ( int32 SolverID, uint64 Cycle )


code: int32 GetLowestSolverFrameNumberGameFrame ( int32 SolverID, int32 GameFrame )


description:
Return a ptr to the existing solver frame data from the specified ID and Frame number
Ptr to the existing solver frame data from the specified ID and Frame number - It is a ptr to the array element, Do not store

code: [FChaosVDSolverFrameData](API\Runtime\ChaosVDData\FChaosVDSolverFrameData) * GetSolverFrameData ( int32 SolverID, int32 FrameNumber )


code: [FChaosVDSolverFrameData](API\Runtime\ChaosVDData\FChaosVDSolverFrameData) * GetSolverFrameDataAtCycle ( int32 SolverID, uint64 Cycle )


description: Returns the name of the specified solver id

code: [FString](API\Runtime\Core\Containers\FString) GetSolverName ( int32 SolverID )


description: Called each time new geometry data becomes available in the recording - Mainly when a new frame is added from the Trace analysis


description: Called each time the recording changes - Mainly when a new frame is added from the Trace analysis


className: FChaosVDRecording

description: Struct that represents a recorded Physics simulation. It is currently populated while analyzing a Trace session

code: struct FChaosVDRecording

GameFrames

type: TArray<FChaosV...

GeometryDataLoaded

type: FChaosVDGeometr...

ImplicitObjects

type: TMap< uint32,T...

description: Id to Ptr map of all shared geometry data required to visualize

RecordedFramesDataPerSolver

type: TMap< int32,TA...

RecordingUpdatedDelegate

type: FChaosVDRecordi...

SessionName

type: FString

description: Session name of the trace session used to re-build this recording


className: FChaosVDSolverFrameData

code: struct FChaosVDSolverFrameData

bIsKeyFrame

type: bool

ParticlesDestroyedIDs

type: TSet< int32 >

SolverSteps

type: FChaosVDStepsCo...


className: FChaosVDStepData

code: struct FChaosVDStepData

RecordedMidPhases

type: TArray<TShared...


module: ChaosVDRuntime

code: bool Serialize ( [FArchive](API\Runtime\Core\Serialization\FArchive) & Ar )


className: WrapperTypeName

code: static FStringView WrapperTypeName = TEXT("FChaosVDConstraint");


className: FChaosVDConstraint

code: struct FChaosVDConstraint

bCanRestoreManifold

type: uint8: 1 = fals...

CCDEnablePenetration

type: float

CollisionMargins

type: TArray< float >

ImplicitTransforms

type: TArray< FTransf...

LastShapeWorldRotationDelta

type: FQuat

ShapesType

type: EChaosVDContact...


className: FChaosVDContactPoint

code: struct FChaosVDContactPoint

ContactType

description: Whether this is a vertex-plane contact, edge-edge contact etc.

FaceIndex

description: Face index of the shape we hit. Only valid for Heightfield and Trimesh contact points, otherwise INDEX_NONE.

Phi

description: Contact separation (negative for overlap)

ShapeContactNormal

type: FVector

description: Shape-space contact normal on the second shape with direction that points away from shape 1.

ShapeContactPoints

type: TArray< FVector...

description: Shape-space contact points on the two bodies.


code: template<typename TOther> void CopyFrom ( const TOther & Other )


code: FChaosVDFRigidParticleControlFlags()


className: FChaosVDFRigidParticleControlFlags

code: struct FChaosVDFRigidParticleControlFlags : public [FChaosVDParticleDataBase](API\Runtime\ChaosVDRuntime\DataWrappers\FChaosVDParticleDataBase)


code: void Serialize ( ArchiveType & Ar )


code: static FStringView WrapperTypeName = TEXT("FChaosVDImplicitObjectDataWrapper");


className: FChaosVDImplicitObjectDataWrapper

description: This should not be templated. But making it so for now so this can live in the ChaosVDRuntime module without referencing Chaos types directly. Once we are close to ship the first version of the tool, this will likely change to the specific types and to the Chaos Module

code: template<class SerializableImplicitType, class ArchiveType> struct FChaosVDImplicitObjectDataWrapper

ImplicitObject

type: SerializableImp...


className: FChaosVDManifoldPoint

code: struct FChaosVDManifoldPoint

ContactPoint

type: FChaosVDContact...


code: virtual bool HasValidData() const


code: virtual ~FChaosVDParticleDataBase()


className: FChaosVDParticleDataBase

description: Base struct that declares the interface to be used for any ParticleData Viewer

code: struct FChaosVDParticleDataBase


code: void SetHasValidData ( bool bNewIsValid )


code: static FStringView WrapperTypeName = TEXT("FChaosVDParticleDataWrapper");


code: FChaosVDParticleDataWrapper()


code: virtual ~FChaosVDParticleDataWrapper()


className: FChaosVDParticleDataWrapper

description: SimplifiedUStructversion ofFChaosVDParticleDataWrapper. Used to be able to show the values in the editor and allow changes via the Property Editor.

code: struct FChaosVDParticleDataWrapper : public [FChaosVDParticleDataBase](API\Runtime\ChaosVDRuntime\DataWrappers\FChaosVDParticleDataBase)

DebugNamePtr

type: TSharedPtr<FSt...

description: Only used during recording

ParticleConstraints

type: TArray<FChaosV...

ParticleDynamics

type: FChaosVDParticl...

Type

type: EChaosVDParticl...


code: bool Serialize ( [FArchive](API\Runtime\Core\Serialization\FArchive) & Ar )


code: FChaosVDParticleDynamicMisc()


className: FChaosVDParticleDynamicMisc

description: SimplifiedUStructversion of FParticleDynamicMisc. Used to be able to show the values in the editor and allow changes via the Property Editor.

code: struct FChaosVDParticleDynamicMisc : public [FChaosVDParticleDataBase](API\Runtime\ChaosVDRuntime\DataWrappers\FChaosVDParticleDataBase)

bDisabled

type: bool

MAngularEtherDrag

type: double

MControlFlags

type: FChaosVDFRigidP...

MObjectState

type: EChaosVDObjectS...

MSleepType

type: EChaosVDSleepTy...


code: template<typename TOther> void CopyFrom ( const TOther & Other )


code: FChaosVDParticleDynamics()


className: FChaosVDParticleDynamics

description: SimplifiedUStructversion of FParticleDynamics. Used to be able to show the values in the editor and allow changes via the Property Editor.

code: struct FChaosVDParticleDynamics : public [FChaosVDParticleDataBase](API\Runtime\ChaosVDRuntime\DataWrappers\FChaosVDParticleDataBase)


code: FChaosVDParticleMassProps()


className: FChaosVDParticleMassProps

description: SimplifiedUStructversion of FParticleMassProps. Used to be able to show the values in the editor and allow changes via the Property Editor.

code: struct FChaosVDParticleMassProps : public [FChaosVDParticleDataBase](API\Runtime\ChaosVDRuntime\DataWrappers\FChaosVDParticleDataBase)


code: static FStringView WrapperTypeName = TEXT("FChaosVDParticlePairMidPhase");


className: FChaosVDParticlePairMidPhase

code: struct FChaosVDParticlePairMidPhase

bIsActive

type: uint8: 1 = fals...


code: FChaosVDParticlePositionRotation()


className: FChaosVDParticlePositionRotation

description: SimplifiedUStructversion of FParticlePositionRotation. Used to be able to show the values in the editor and allow changes via the Property Editor.

code: struct FChaosVDParticlePositionRotation : public [FChaosVDParticleDataBase](API\Runtime\ChaosVDRuntime\DataWrappers\FChaosVDParticleDataBase)


code: FChaosVDParticleVelocities()


className: FChaosVDParticleVelocities

description: SimplifiedUStructversion of FParticleVelocities. Used to be able to show the values in the editor and allow changes via the Property Editor.

code: struct FChaosVDParticleVelocities : public [FChaosVDParticleDataBase](API\Runtime\ChaosVDRuntime\DataWrappers\FChaosVDParticleDataBase)


className: WithSerializer

code: enum &123; WithSerializer = true &125;


code: template<> struct TStructOpsTypeTraits< FChaosVDFRigidParticleControlFlags > : public [TStructOpsTypeTraitsBase2< FChaosVDFRigidParticleControlFlags >](API\Runtime\CoreUObject\UObject\TStructOpsTypeTraitsBase2)


code: template<> struct TStructOpsTypeTraits< FChaosVDManifoldPoint > : public [TStructOpsTypeTraitsBase2< FChaosVDManifoldPoint >](API\Runtime\CoreUObject\UObject\TStructOpsTypeTraitsBase2)


code: template<> struct TStructOpsTypeTraits< FChaosVDParticleDataWrapper > : public [TStructOpsTypeTraitsBase2< FChaosVDParticleDataWrapper >](API\Runtime\CoreUObject\UObject\TStructOpsTypeTraitsBase2)


code: template<> struct TStructOpsTypeTraits< FChaosVDParticleDynamicMisc > : public [TStructOpsTypeTraitsBase2< FChaosVDParticleDynamicMisc >](API\Runtime\CoreUObject\UObject\TStructOpsTypeTraitsBase2)


code: template<> struct TStructOpsTypeTraits< FChaosVDParticleDynamics > : public [TStructOpsTypeTraitsBase2< FChaosVDParticleDynamics >](API\Runtime\CoreUObject\UObject\TStructOpsTypeTraitsBase2)


code: template<> struct TStructOpsTypeTraits< FChaosVDParticleMassProps > : public [TStructOpsTypeTraitsBase2< FChaosVDParticleMassProps >](API\Runtime\CoreUObject\UObject\TStructOpsTypeTraitsBase2)


code: template<> struct TStructOpsTypeTraits< FChaosVDParticlePairMidPhase > : public [TStructOpsTypeTraitsBase2< FChaosVDParticlePairMidPhase >](API\Runtime\CoreUObject\UObject\TStructOpsTypeTraitsBase2)


code: template<> struct TStructOpsTypeTraits< FChaosVDConstraint > : public [TStructOpsTypeTraitsBase2< FChaosVDConstraint >](API\Runtime\CoreUObject\UObject\TStructOpsTypeTraitsBase2)


code: template<> struct TStructOpsTypeTraits< FChaosVDParticlePositionRotation > : public [TStructOpsTypeTraitsBase2< FChaosVDParticlePositionRotation >](API\Runtime\CoreUObject\UObject\TStructOpsTypeTraitsBase2)


code: template<> struct TStructOpsTypeTraits< FChaosVDParticleVelocities > : public [TStructOpsTypeTraitsBase2< FChaosVDParticleVelocities >](API\Runtime\CoreUObject\UObject\TStructOpsTypeTraitsBase2)


code: template<> struct TStructOpsTypeTraits< FChaosVDContactPoint > : public [TStructOpsTypeTraitsBase2< FChaosVDContactPoint >](API\Runtime\CoreUObject\UObject\TStructOpsTypeTraitsBase2)


className: DelegatesRWLock

code: static FRWLock DelegatesRWLock = FRWLock();


description: Returns a unique ID used to be used to identify CVD (Chaos Visual Debugger) data

code: int32 GenerateUniqueID()


code: static [FChaosVDRuntimeModule](API\Runtime\ChaosVDRuntime\FChaosVDRuntimeModule) & Get()


description: Returns true if we are currently recording a Physics simulation

code: bool IsRecording() const


className: PerformFullCaptureDelegate

code: static FChaosVDCaptureRequestDelegate PerformFullCaptureDelegate = FChaosVDCaptureRequestDelegate();


className: RecordingStartedDelegate

code: static FChaosVDRecordingStateChangedDelegate RecordingStartedDelegate = FChaosVDRecordingStateChangedDelegate();


className: RecordingStopDelegate

code: static FChaosVDRecordingStateChangedDelegate RecordingStopDelegate = FChaosVDRecordingStateChangedDelegate();


code: static [FDelegateHandle](API\Runtime\Core\Delegates\FDelegateHandle) RegisterFullCaptureRequestedCallback ( const FChaosVDCaptureRequestDelegate::FDelegate & InCallback )


code: static [FDelegateHandle](API\Runtime\Core\Delegates\FDelegateHandle) RegisterRecordingStartedCallback ( const FChaosVDRecordingStateChangedDelegate::FDelegate & InCallback )


code: static [FDelegateHandle](API\Runtime\Core\Delegates\FDelegateHandle) RegisterRecordingStopCallback ( const FChaosVDRecordingStateChangedDelegate::FDelegate & InCallback )


code: static bool RemoveFullCaptureRequestedCallback ( const [FDelegateHandle](API\Runtime\Core\Delegates\FDelegateHandle) & InDelegateToRemove )


code: static bool RemoveRecordingStartedCallback ( const [FDelegateHandle](API\Runtime\Core\Delegates\FDelegateHandle) & InDelegateToRemove )


code: static bool RemoveRecordingStopCallback ( const [FDelegateHandle](API\Runtime\Core\Delegates\FDelegateHandle) & InDelegateToRemove )


description: Called before the module is unloaded, right before the module object is destroyed. During normal shutdown, this is called in reverse order that modules finishStartupModule(). This means that, as long as a module references dependent modules in it'sStartupModule(), it can safely reference those dependencies inShutdownModule()as well.

code: virtual void ShutdownModule()


description: Starts a CVD recording by starting a Trace session. It will stop any existing trace session

code: void StartRecording ( const [TArray](API\Runtime\Core\Containers\TArray)< [FString](API\Runtime\Core\Containers\FString) > & Args )


description: FModuleManager::Get().LoadModuleChecked(TEXT("HTTP"));

code: virtual void StartupModule()


className: FChaosVDRuntimeModule

code: class FChaosVDRuntimeModule : public [IModuleInterface](API\Runtime\Core\Modules\IModuleInterface)


description: Cm squared to meters squared

module: ChaosVehiclesCore

code: namespace Chaos { float Chaos::Cm2ToM2 ( float Cm2 ) }


description: Cm/s to km/h

code: namespace Chaos { float Chaos::CmSToKmH ( float CmS ) }


description: Cm/s to miles per hour

code: namespace Chaos { float Chaos::CmSToMPH ( float CmS ) }


description: Cm to meters

code: namespace Chaos { float Chaos::CmToM ( float Cm ) }


description: Cm to meters - warning loss of precision

code: namespace Chaos { float Chaos::CmToMiles ( float Cm ) }


code: namespace Chaos { float Chaos::CmToMScaling() }


code: namespace Chaos { float Chaos::DegToRad ( float InDeg ) }


description: Typical gear ratios: Reverse −4.181, 1st 3.818, 2nd 2.294, 3rd 1.500, 4th 1.133, 5th 0.911 Source: Georg Rill. Road Vehicle Dynamics: Fundamentals and Modeling (Ground Vehicle Engineering Series) (p. 121). CRC Press.

code: namespace Chaos { enum EAerofoilType { Fixed = 0, Wing, Rudder, Elevator, } }


code: namespace Chaos { enum EDifferentialType { UndefinedDrive, AllWheelDrive, FrontWheelDrive, RearWheelDrive, } }


code: namespace Chaos { enum ESteerType { SingleAngle, AngleRatio, Ackermann, } }


code: namespace Chaos { enum EThrustType { Fixed = 0, Wing, Rudder, Elevator, HelicopterRotor, } }


code: namespace Chaos { enum ETransmissionType { Manual, Automatic, } }


description: Km/h to cm/s

code: namespace Chaos { float Chaos::KmHToCmS ( float KmH ) }


description: Km to miles

code: namespace Chaos { float Chaos::KmToMile ( float Km ) }


description: Meters squared to cm squared

code: namespace Chaos { float Chaos::M2ToCm2 ( float M2 ) }


description: Miles to Km

code: namespace Chaos { float Chaos::MileToKm ( float Miles ) }


description: Miles per hour to cm/s

code: namespace Chaos { float Chaos::MPHToCmS ( float MPH ) }


description: Miles per hour to meters per second

code: namespace Chaos { float Chaos::MPHToMS ( float MPH ) }


description: Meters per second to miles per hour

code: namespace Chaos { float Chaos::MSToMPH ( float MS ) }


description: Meters to cm

code: namespace Chaos { float Chaos::MToCm ( float M ) }


code: namespace Chaos { float Chaos::MToCmScaling() }


description: Radians per second to revolutions per minute

code: namespace Chaos { float Chaos::OmegaToRPM ( float Omega ) }


code: namespace Chaos { float Chaos::RadToDeg ( float InRad ) }


description: Revolutions per minute to radians per second

code: namespace Chaos { float Chaos::RPMToOmega ( float RPM ) }


code: namespace Chaos { float Chaos::Sqr ( float Val ) }


code: namespace Chaos { float Chaos::TorqueCmToM ( float TorqueIn ) }


code: namespace Chaos { float Chaos::TorqueMToCm ( float TorqueIn ) }


code: void CalculateAkermannAngle ( float Input, float & OutSteerLeft, float & OutSteerRight )


code: void GetLeftHingeLocations ( FVector2D & OutC1, FVector2D & OutP, FVector2D & OutC2 )


code: float GetMaxAckermanAngle()


code: void GetRightHingeLocations ( FVector2D & OutC1, FVector2D & OutP, FVector2D & OutC2 )


code: FAckermannSim ( const [FSimpleSteeringConfig](API\Runtime\ChaosVehiclesCore\FSimpleSteeringConfig) * SetupIn )


className: FAckermannSim

code: class FAckermannSim : public [TVehicleSystem< FSimpleSteeringConfig >](API\Runtime\ChaosVehiclesCore\TVehicleSystem)


description: Angle of attack is the angle between the aerofoil and the airflow vector

code: float CalcAngleOfAttackDegrees ( const FVector & UpAxis, const FVector & InAirflowVector )


description: Center of lift moves fore/aft based on current AngleOfAttack

code: float CalcCentreOfLift()


description: Dynamic air pressure = 0.5 * AirDensity * Vsqr This function reduces the dynamic pressure in a linear fashion with altitude between MinCeiling & MaxCeiling in order to limit the aircrafts altitude with a 'natural feel' without having a hard limit

code: float CalcDynamicPressure ( float VelocitySqr, float InAltitude )


description: Returns drag coefficient for the current angle of attack of the aerofoil surface

code: float CalcDragCoefficient ( float InAngleOfAttack, float InControlSurfaceAngle )


code: void SetControlSurface ( float CtrlSurfaceInput )


code: void SetDensityOfMedium ( float InDensity )


code: FVector GetCenterOfLiftOffset()


description: Returns the combined force of lift and drag at an aerofoil in world coordinates for direct application to the aircrafts rigid body.

code: FVector GetForce ( FTransform & BodyTransform, const FVector & v, float Altitude, float DeltaTime )


description: Set a debug Id so we can identify an individual aerofoil

code: void SetAerofoilId ( int Id )


description: Returns lift coefficient for the current angle of attack of the aerofoil surface Cheating by making control surface part of entire aerofoil movement

code: float CalcLiftCoefficient ( float InAngleOfAttack, float InControlSurfaceAngle )


code: FAerofoil ( const [FAerofoilConfig](API\Runtime\ChaosVehiclesCore\FAerofoilConfig) * SetupIn )


className: FAerofoil

code: class FAerofoil : public [TVehicleSystem< FAerofoilConfig >](API\Runtime\ChaosVehiclesCore\TVehicleSystem)


className: FAerofoilConfig

code: struct FAerofoilConfig

Area

type: float

Type

type: EAerofoilType


className: FArcadeControlConfig

code: struct FArcadeControlConfig

StabilizeControl

type: FStabilizeContr...

description: Arcade style control of vehicle

TargetRotationControl

type: FTargetRotation...

description: Arcade style direct control of vehicle rotation via torque force

TorqueControl

type: FTorqueControlC...


className: FAxleConfig

code: struct FAxleConfig

WheelIndex

type: TArray< uint16 ...


code: void Simulate ( float DeltaTime )


className: FAxleSim

code: class FAxleSim : public [TVehicleSystem< FAxleConfig >](API\Runtime\ChaosVehiclesCore\TVehicleSystem)

Setup

type: FAxleConfig


code: virtual void ShutdownModule()


code: virtual void StartupModule()


className: FChaosVehiclesCoreModule

code: class FChaosVehiclesCoreModule : public [IModuleInterface](API\Runtime\Core\Modules\IModuleInterface)


code: void Add ( const [FVec2](API\Runtime\ChaosCore\Chaos\FVec2) & Value )


code: float EvaluateY ( float InX ) const


code: void AddNormalized ( float Value )


code: float GetValue ( float InX, float MaxX, float MaxY ) const


className: FNormalisedGraph

code: class FNormalisedGraph


className: EMeasure

code: enum EMeasure { ZeroToThirtyMPH = 0, ZeroToSixtyMPH, QuarterMile, ThirtyToZeroMPH, SixtyToZeroMPH, }


code: void AddMeasure ( [FTimeAndDistanceMeasure](API\Runtime\ChaosVehiclesCore\FTimeAndDistanceMeasure) & MeasureIn )


code: const [FTimeAndDistanceMeasure](API\Runtime\ChaosVehiclesCore\FTimeAndDistanceMeasure) & GetMeasure ( int MeasurementIdx )


code: int GetNumMeasures() const


code: void Update ( float DeltaTime, const FVector & CurrentLocation, float CurrentVelocity )


className: FPerformanceMeasure

code: class FPerformanceMeasure


code: FSimpleAerodynamicsConfig()


className: FSimpleAerodynamicsConfig

description: Simple Aerodynamics - calculates drag and down-force/lift-force for a given speed

code: struct FSimpleAerodynamicsConfig

AreaMetresSquared

description: FVector Offet; // local offset relative to CM.


description: Get the drag and down forces combined in a 3D vector, drag on X-axis, down-force on Z-axis

code: FVector GetCombinedForces ( float VelocityIn )


description: Get the drag force generated at the given velocity

code: float GetDragForceFromVelocity ( float VelocityIn )


description: Get the lift/down-force generated at the given velocity

code: float GetLiftForceFromVelocity ( float VelocityIn )


description: Set the density of the medium through which you are traveling Air/Water, etc

code: void SetDensityOfMedium ( float DensityIn )


code: void SetDownforceCoefficient ( float InCoeffient )


code: void SetDragCoefficient ( float InCoeffient )


code: FSimpleAerodynamicsSim ( const [FSimpleAerodynamicsConfig](API\Runtime\ChaosVehiclesCore\FSimpleAerodynamicsConfig) * SetupIn )


className: FSimpleAerodynamicsSim

code: class FSimpleAerodynamicsSim : public [TVehicleSystem< FSimpleAerodynamicsConfig >](API\Runtime\ChaosVehiclesCore\TVehicleSystem)


code: FSimpleDifferentialConfig()


className: FSimpleDifferentialConfig

code: struct FSimpleDifferentialConfig

DifferentialType

type: EDifferentialTy...


className: FSimpleDifferentialSim

code: class FSimpleDifferentialSim : public [TVehicleSystem< FSimpleDifferentialConfig >](API\Runtime\ChaosVehiclesCore\TVehicleSystem)


code: FSimpleDifferentialSim ( const [FSimpleDifferentialConfig](API\Runtime\ChaosVehiclesCore\FSimpleDifferentialConfig) * SetupIn )


className: FSimpleEngineConfig

description: Simple Normally Aspirated Engine Output defined by a single torque curve over the rev range No turbo/ turbo lag

code: struct FSimpleEngineConfig

TorqueCurve

type: FNormalisedGrap...

description: #todo: want something likeUCurveFloat/FRuntimeFloatCurve/ FTorqueCurveEditor


description: Get the Engine angular velocity

code: float GetEngineOmega() const


code: float GetEngineRevRate()


code: float GetEngineTorque()


code: float GetTorqueFromRPM ( bool LimitToIdle )


description: Get torque value from torque curve based on input RPM

code: float GetTorqueFromRPM ( float RPM, bool LimitToIdle )


description: Set the Engine angular velocity

code: void SetEngineOmega ( const float EngineOmega )


description: When the wheels are in contact with the ground and clutch engaged then the load on the engine from the wheels determines the engine speed. With no clutch simulation just setting the engine RPM directly to match the wheel speed.

code: void SetEngineRPM ( bool FreeRunningIn, float InEngineRPM )


code: void SetMaxTorque ( float InTorque )


description: Pass in the throttle position to the engine

code: void SetThrottle ( float InThrottle )


description: Simulate - NOP at the moment

code: void Simulate ( float DeltaTime )


description: Get the Engine speed in Revolutions Per Minute

code: float GetEngineRPM() const


description: Start the engine

code: void StartEngine()


description: Stop the engine

code: void StopEngine()


code: FSimpleEngineSim ( const [FSimpleEngineConfig](API\Runtime\ChaosVehiclesCore\FSimpleEngineConfig) * StaticDataIn )


className: FSimpleEngineSim

code: class FSimpleEngineSim : public [TVehicleSystem< FSimpleEngineConfig >](API\Runtime\ChaosVehiclesCore\TVehicleSystem)


code: FSimpleSteeringConfig()


className: FSimpleSteeringConfig

code: struct FSimpleSteeringConfig

SpeedVsSteeringCurve

type: FGraph

SteeringType

type: ESteerType


code: float GetSteeringAngle ( float InNormSteering, float MaxSteeringAngle, float WheelSide )


code: float GetSteeringFromVelocity ( float VelocityMPH )


code: FSimpleSteeringSim ( const [FSimpleSteeringConfig](API\Runtime\ChaosVehiclesCore\FSimpleSteeringConfig) * SetupIn )


className: FSimpleSteeringSim

code: class FSimpleSteeringSim : public [TVehicleSystem< FSimpleSteeringConfig >](API\Runtime\ChaosVehiclesCore\TVehicleSystem)

Ackermann

type: FAckermannSim


code: void SetSuspensionMaxDrop ( float InSuspensionMaxDrop )


code: void SetSuspensionMaxRaise ( float InSuspensionMaxRaise )


code: FSimpleSuspensionConfig()


className: FSimpleSuspensionConfig

code: struct FSimpleSuspensionConfig

SuspensionAxis

type: FVector

SuspensionSmoothing

type: int


code: int32 GetAveragingCount() const


code: float GetAveragingLength ( const int32 LengthIndex ) const


code: float GetLastDisplacement() const


code: float GetLastSpringLength() const


code: const FVector & GetLocalRestingPosition() const


code: float GetNormalizedLength()


code: float GetSpringLength()


code: float GetSuspensionForce() const


code: FVector GetSuspensionForceVector ( const FTransform & InTransform )


code: float GetSuspensionOffset()


code: float GetTraceLength ( float WheelRadius )


code: void SetAveragingCount ( const int32 InAveragingCount )


code: void SetAveragingLength ( const int32 LengthIndex, const float InAveragingLength )


code: void SetAveragingNum ( const int32 InAveragingNum )


code: void SetLastDisplacement ( const float InLastDisplacement )


code: void SetLastSpringLength ( const float InLastSpringLength )


code: void SetLocalRestingPosition ( const FVector & InOffset )


description: Set local velocity at suspension position

code: void SetLocalVelocity ( const FVector & InVelocity )


code: int32 GetAveragingNum() const


code: void SetLocalVelocityFromWorld ( const FTransform & InWorldTransform, const FVector & InWorldVelocity )


code: void SetSpringIndex ( uint32 InIndex )


code: void SetSuspensionLength ( float InLength, float WheelRadius )


code: void Simulate ( float DeltaTime )


code: void UpdateWorldRaycastLocation ( const FTransform & BodyTransform, float WheelRadius, [FSuspensionTrace](API\Runtime\ChaosVehiclesCore\FSuspensionTrace) & OutTrace )


code: FSimpleSuspensionSim ( const [FSimpleSuspensionConfig](API\Runtime\ChaosVehiclesCore\FSimpleSuspensionConfig) * SetupIn )


className: FSimpleSuspensionSim

code: class FSimpleSuspensionSim : public [TVehicleSystem< FSimpleSuspensionConfig >](API\Runtime\ChaosVehiclesCore\TVehicleSystem)


code: const FVector & GetThrustDirection() const


className: FSimpleThrustConfig

code: struct FSimpleThrustConfig

Curve

type: TArray< float >

Type

type: EThrustType


description: Get functions.

code: const FVector & GetThrustForce() const


code: const FVector GetThrustLocation() const


code: void SetPitch ( float InPitch )


code: void SetRoll ( float InRoll )


code: void SetThrottle ( float InThrottle )


code: void SetWorldVelocity ( const FVector & InVelocity )


code: void SetYaw ( float InYaw )


description: Simulate


className: FSimpleThrustSim

code: class FSimpleThrustSim : public [TVehicleSystem< FSimpleThrustConfig >](API\Runtime\ChaosVehiclesCore\TVehicleSystem)

ThrusterStarted

type: bool


code: FSimpleThrustSim ( const [FSimpleThrustConfig](API\Runtime\ChaosVehiclesCore\FSimpleThrustConfig) * SetupIn )


className: FSimpleTireConfig

code: struct FSimpleTireConfig

Depth

type: float


description: Tires are normally specified as 192/55R15.

code: FSimpleTireConfig()


code: FSimpleTireSim ( const [FSimpleTireConfig](API\Runtime\ChaosVehiclesCore\FSimpleTireConfig) * SetupIn )


className: FSimpleTireSim

code: class FSimpleTireSim : public [TVehicleSystem< FSimpleTireConfig >](API\Runtime\ChaosVehiclesCore\TVehicleSystem)


className: FSimpleTransmissionConfig

code: struct FSimpleTransmissionConfig

TransmissionType

type: ETransmissionTy...


code: FSimpleTransmissionConfig()


description: Set the target gear to one lower than current target, will clamp gear index within rage

code: void ChangeDown()


description: Set the target gear to one higher than current target, will clamp gear index within rage

code: void ChangeUp()


code: void CorrectGearInputRange ( int32 & GearIndexInOut )


code: int32 GetCurrentGear() const


description: Get the expected engine RPM from the wheel RPM taking into account the current gear ratio (assuming no clutch slip)

code: *float GetEngineTorque ( float InTransmissionTorque )


description: Get the current gear change time

code: float GetCurrentGearChangeTime() const


code: float GetGearRatio ( int32 InGear )


code: int32 GetTargetGear() const


description: Get the transmission RPM for the current state of the engine RPM and gear selection

code: float GetTransmissionRPM()


description: Get the transmission RPM, from the specified engine RPM and gear selection

code: float GetTransmissionRPM ( float InEngineRPM, int InGear )


description: Given the engine torque return the transmission torque taking into account the gear ratios and transmission losses

code: float GetTransmissionTorque ( float InEngineTorque )


description: Are we currently in the middle of a gear change

code: bool IsCurrentlyChangingGear() const


code: bool IsOutOfGear() const


code: void SetAllowedToChangeGear ( bool OkToChangeIn )


code: void SetCurrentGear ( const int32 InCurrentGear )


description: Set the current gear change time

code: void SetCurrentGearChangeTime ( const float InCurrentGearChangeTime )


description: Tell the transmission system what the current engine RPM is, so we can decide when to change up/down with automatic transmission type

code: void SetEngineRPM ( float InRPM )


description: Set the target gear number to change to, can change gear immediately if specified i.e. rather than waiting for the gear change time to elapse

code: void SetGear ( int32 InGear, bool Immediate )


code: void SetTargetGear ( const int32 InTargetGear )


code: FSimpleTransmissionSim ( const [FSimpleTransmissionConfig](API\Runtime\ChaosVehiclesCore\FSimpleTransmissionConfig) * SetupIn )


description: Simulate - update internal state

code: void Simulate ( float DeltaTime )


className: FSimpleTransmissionSim

code: class FSimpleTransmissionSim : public [TVehicleSystem< FSimpleTransmissionConfig >](API\Runtime\ChaosVehiclesCore\TVehicleSystem)


className: EAxleType

code: enum EAxleType { UndefinedAxle = 0, Front, Rear, }


className: EExternalTorqueCombineMethod

code: enum EExternalTorqueCombineMethod { None = 0, Override, Additive, }


className: EFrictionCombineMethod

code: enum EFrictionCombineMethod { Multiply, Average, }


className: EWheelDamageStatus

code: enum EWheelDamageStatus { NONE, BUCKLED, FLAT, MISSING, }


className: EWheelSimulationStatus

code: enum EWheelSimulationStatus { ROLLING, SPINNING, LOCKED, }


className: FSimpleWheelConfig

description: Omega : Rotational Speed [radians/sec] Alpha : Slip Angle [radians] k or Sx: Longitudinal Slip - slip is -ve when braking and +ve when accelerating Re : Effective Wheel Radius Wheel setup data that doesn't change during simulation

code: struct FSimpleWheelConfig

AxleType

type: EAxleType

BrakeEnabled

description: Setup

ExternalTorqueCombineMethod

type: EExternalTorque...

FrictionCombineMethod

type: EFrictionCombin...

MaxBrakeTorque

description: Brakes

Offset

description: Wheel tire


code: [FAerofoil](API\Runtime\ChaosVehiclesCore\FAerofoil) & GetAerofoil ( int AerofoilIdx )


code: const [TArray](API\Runtime\Core\Containers\TArray)< [FAxleSim](API\Runtime\ChaosVehiclesCore\FAxleSim) > & GetAxles() const


code: [FSimpleSuspensionSim](API\Runtime\ChaosVehiclesCore\FSimpleSuspensionSim) & GetSuspension ( int WheelIdx )


code: [FSimpleThrustSim](API\Runtime\ChaosVehiclesCore\FSimpleThrustSim) & GetThruster ( int ThrusterIdx )


code: [FSimpleWheelSim](API\Runtime\ChaosVehiclesCore\FSimpleWheelSim) & GetWheel ( int WheelIdx )


code: bool HasStabilizeControlSetup()


code: bool HasTargetRotationControlSetup()


code: bool HasTorqueControlSetup()


code: bool HasTransmission() const


description: Void Simulate(float DeltaTime) override { }

code: bool IsValid()


code: FSimpleWheeledVehicle()


className: FSimpleWheeledVehicle

description: This class is currently just a container for the simulation components used by a wheeled vehicle Keeping all the physics systems together and accessible through the one vehicle class

code: class FSimpleWheeledVehicle : public [Chaos::IVehicleInterface](API\Runtime\ChaosVehiclesCore\IVehicleInterface)

Aerodynamics

type: TArray<FSimple...

Aerofoils

type: TArray<FAerofo...

Axles

type: TArray<FAxleSi...

bSuspensionEnabled

description: TArrayFuel; TArrayBallast; turbo ..

StabilizeControlSim

type: TArray<FStabil...

TargetRotationControlSim

type: TArray<FTarget...

TorqueControlSim

type: TArray<FTorque...


code: virtual ~FSimpleWheeledVehicle()


description: Get the angular position of the wheel [radians]

code: float GetAngularPosition() const


description: Get the angular velocity of the wheel [radians/sec]

code: float GetAngularVelocity() const


description: Get the braking torque being applied to the wheel [N.m]

code: float GetBrakeTorque() const


description: Get the drive torque being applied to the wheel [N.m]

code: float GetDriveTorque() const


description: Get the radius of the wheel [cm]

code: float GetEffectiveRadius() const


description: Return the calculated available friction force

code: FVector GetForceFromFriction() const


description: Amount of friction we can expect after taking into account the amount the wheel slips

code: static float GetNormalisedFrictionFromSlipAngle ( float SlipIn )


code: float GetNormalizedLateralSlip() const


description: Get the current longitudinal slip value [0 no slip - using static friction, 1 full slip - using dynamic friction]


description: Get the road speed at the wheel

code: float GetRoadSpeed() const


description: Get the effective ground speed along the lateral wheel axis positive if wheel is faster than effective ground speed, negative if wheel is slower

code: float GetSkidMagnitude() const


description: Get the slip angle for this wheel - angle between wheel forward axis and velocity vector [degrees]

code: float GetSlipAngle() const


code: float GetSteeringAngle() const


description: Get the difference between the wheel speed and the effective ground speed of the vehicle at the wheel positive if wheel is faster than effective ground speed, negative if wheel is slower

code: float GetSlipMagnitude() const


description: Get the friction coefficient of the surface in contact with the wheel

code: float GetSurfaceFriction() const


description: Get the linear ground speed of the wheel based on its current rotational speed

code: float GetWheelGroundSpeed() const


description: Get the wheel RPM [revolutions per minute]

code: float GetWheelRPM()


description: Get the magnitude of the force pressing the wheel into the terrain

code: float GetWheelLoadForce() const


description: Is the wheel in contact with the terrain or another object

code: bool InContact() const


code: bool IsABSActivated() const


code: bool IsSkidding() const


code: bool IsSlipping() const


description: Set the angular position in radians

code: void SetAngularPosition ( float PositionIn )


description: Set the angular position in radians/sec

code: void SetAngularVelocity ( float AngularVelocityIn )


description: Set the braking torque - decelerating rotational force

code: void SetBrakeTorque ( float BrakeTorqueIn, bool bEngineBrakingIn )


code: void SetBrakeTorqueOverride ( float BrakeTorqueIn, bool bEngineBrakingIn )


description: Set the drive torque - accelerating rotational force

code: void SetDriveTorque ( float EngineTorqueIn )


code: void SetDriveTorqueOverride ( float EngineTorqueIn )


description: Set wheel rotational speed to match the specified linear forwards speed

code: void SetMatchingSpeed ( float LinearMetersPerSecondIn )


code: void SetMassPerWheel ( float VehicleMassPerWheel )


code: void SetMaxOmega ( float InMaxOmega )


code: void SetOnGround ( bool OnGround )


code: void SetSteeringAngle ( float InAngle )


description: Set the friction coefficient of the surface under the wheel

code: void SetSurfaceFriction ( float InFriction )


code: void SetTorqueCombineMethod ( [FSimpleWheelConfig::EExternalTorqueCombineMethod](API\Runtime\ChaosVehiclesCore\FSimpleWheelConfig\EExternalTorqueCombineMethod) InCombineMethod )


description: Set the vehicle's speed at the wheels location in local wheel coords

code: void SetVehicleGroundSpeed ( const FVector & VIn )


code: void SetWheelIndex ( uint32 InIndex )


description: Set the force pressing the wheel into the terrain - from suspension

code: void SetWheelLoadForce ( float WheelLoadForceIn )


description: Simulate - figure out wheel lateral and longitudinal forces based on available friction at the wheel Wheel load force from body weight and the surface friction together determine the grip available at the wheel DriveTorque accelerates the wheel BrakeTorque decelerates the wheel

code: void Simulate ( float DeltaTime )


description: Set the wheel radius - can change dynamically during simulation if desired

code: void SetWheelRadius ( float NewRadius )


code: FSimpleWheelSim ( const [FSimpleWheelConfig](API\Runtime\ChaosVehiclesCore\FSimpleWheelConfig) * SetupIn )


className: FSimpleWheelSim

description: Wheel instance data changes during the simulation

code: class FSimpleWheelSim : public [TVehicleSystem< FSimpleWheelConfig >](API\Runtime\ChaosVehiclesCore\TVehicleSystem)

AppliedLinearDriveForce

description: Debug for now

DriveTorque

description: In.

ExternalTorqueCombineMethod

type: FSimpleWheelCon...


className: FStabilizeControlConfig

code: struct FStabilizeControlConfig

AltitudeHoldZ

description: Yaw Torque Scaling

Enabled

description: Torque Control Enabled


code: FStabilizeControlSim ( const [FStabilizeControlConfig](API\Runtime\ChaosVehiclesCore\FStabilizeControlConfig) * SetupIn )


className: FStabilizeControlSim

code: class FStabilizeControlSim : public [TVehicleSystem< FStabilizeControlConfig >](API\Runtime\ChaosVehiclesCore\TVehicleSystem)


code: static void AkermannSetup ( float T, float Beta, float R, float & OutH, float & OutS )


code: static void CalcJointPositions ( float T, float Beta, float R, FVector2D & C1, float & R1, FVector2D & C2, float & R2 )


description: Static void CalculateAkermannAngle(float Input, float& OutSteerLeft, float& OutSteerRight , FVector2D& OutPtLeft = FVector2D(), FVector2D& OutPtRight = FVector2D()) float RestAngle; FVector2D PtRest; CalculateAkermannAngle(false, 0.0f, PtRest, RestAngle); CalculateAkermannAngle(true, Input, OutSteerLeft, OutPtLeft); CalculateAkermannAngle(false, Input, OutSteerRight, OutPtRight); OutSteerLeft -= RestAngle; OutSteerRight -= RestAngle;

code: static void CalculateAkermannAngle ( bool Flip, float Input, FVector2D & C2, float R1, float R2, float & OutSteerAngle, FVector2D & OutC1, FVector2D & OutPt )


code: static float CalculateBetaDegrees ( float TrackWidth, float WheelBase )


className: FSteeringUtility

description:
float dev = Input * 0.5f;
        OutSteerA = RadToDeg(FMath::Atan((t - (s - dev)) / (2.0f * h)));
 /** |

code: struct FSteeringUtility

OutSteerB

description: Static void Akerman(float Input, float& OutSteerA, float& OutSteerB) { float l1 = 2.0f; float l2 = 0.15f; float Gamma = DegToRad(18.0f);


className: FSuspensionTrace

description: Suspension world ray/shape trace start and end positions

code: struct FSuspensionTrace

End

type: FVector


description: Compute spring damping value that will achieve critical damping

code: static float ComputeCriticalDamping ( float SpringRate, float SprungMass )


description: Compute spring damping value that will achieve the desired damping ratio. A damping ratio between 0.2-0.5 is typical of vehicle suspension

code: static float ComputeDamping ( float SpringRate, float SprungMass, float DampingRatio )


description: Natural frequency of spring in radians/sec - divide by 2Pi to get result in Hz

code: static float ComputeNaturalFrequency ( float SpringRate, float SprungMass )


description: Returns true if it was able to find a valid mass configuration. If only one or two springs are included, then a valid configuration may not result in a stable suspension system - a bicycle or pogostick, for example, which is not perfectly centered may have a valid sprung mass configuration without being stable.

code: static bool ComputeSprungMasses ( const [TArray](API\Runtime\Core\Containers\TArray)< FVector > & MassSpringPositions, const float TotalMass, [TArray](API\Runtime\Core\Containers\TArray)< float > & OutSprungMasses )


description: T - Track width W - Wheelbase H - Distance form steering rod to center of axle R - Rod End Length S - Steering Rod Length (Half)Intersection of two axis aligned circles Radius R1, R2 with a separation distance between centers of D

code: static bool IntersectTwoCircles ( float R1, float R2, float D, FVector2D & OutIntersection )


description: Same as above, but allows the caller to specify spring locations in a local space which is not necessarily originated at the center of mass.

code: static bool ComputeSprungMasses ( const [TArray](API\Runtime\Core\Containers\TArray)< FVector > & LocalSpringPositions, const FVector & LocalCenterOfMass, const float TotalMass, [TArray](API\Runtime\Core\Containers\TArray)< float > & OutSprungMasses )


className: FSuspensionUtility

code: struct FSuspensionUtility


className: FTargetRotationControlConfig

code: struct FTargetRotationControlConfig

Enabled

description: Rotation Control Enabled

MaxAccel

description: Rotation mac accel

RotationDamping

description: Rotation damping

RotationStiffness

description: Rotation stiffness


code: FTargetRotationControlSim()


code: FTargetRotationControlSim ( const [FTargetRotationControlConfig](API\Runtime\ChaosVehiclesCore\FTargetRotationControlConfig) * SetupIn )


className: FTargetRotationControlSim

code: class FTargetRotationControlSim : public [TVehicleSystem< FTargetRotationControlConfig >](API\Runtime\ChaosVehiclesCore\TVehicleSystem)


code: bool IsComplete() const


code: void Update ( float DeltaTime, const FVector & CurrentLocation, float CurrentVelocity )


code: FTimeAndDistanceMeasure ( const [FString](API\Runtime\Core\Containers\FString) & DescriptionIn, float InitialVelocityIn, float TargetVelocityIn, float TargetDistanceIn )


className: FTimeAndDistanceMeasure

code: class FTimeAndDistanceMeasure


className: FTorqueControlConfig

code: struct FTorqueControlConfig

Enabled

description: Torque Control Enabled

PitchTorqueScaling

description: Pitch Torque Scaling

RollTorqueScaling

description: Roll Torque Scaling

RotationDamping

description: Rotation damping

YawTorqueScaling

description: Yaw Torque Scaling


code: FTorqueControlSim ( const [FTorqueControlConfig](API\Runtime\ChaosVehiclesCore\FTorqueControlConfig) * SetupIn )


className: FTorqueControlSim

code: class FTorqueControlSim : public [TVehicleSystem< FTorqueControlConfig >](API\Runtime\ChaosVehiclesCore\TVehicleSystem)


code: static int GetNumDrivenWheels ( const [TArray](API\Runtime\Core\Containers\TArray)< [FSimpleWheelSim](API\Runtime\ChaosVehiclesCore\FSimpleWheelSim) > & Wheels )


code: static int GetNumWheelsOnAxle ( [FSimpleWheelConfig::EAxleType](API\Runtime\ChaosVehiclesCore\FSimpleWheelConfig\EAxleType) AxleType, const [TArray](API\Runtime\Core\Containers\TArray)< [FSimpleWheelSim](API\Runtime\ChaosVehiclesCore\FSimpleWheelSim) > & Wheels )


code: static float GetTorqueRatioForWheel ( const [FSimpleDifferentialSim](API\Runtime\ChaosVehiclesCore\FSimpleDifferentialSim) & PDifferential, const int WheelIndex, const [TArray](API\Runtime\Core\Containers\TArray)< [FSimpleWheelSim](API\Runtime\ChaosVehiclesCore\FSimpleWheelSim) > & Wheels )


code: static bool IsWheelPowered ( const [EDifferentialType](API\Runtime\ChaosVehiclesCore\Chaos__EDifferentialType) DifferentialType, const [FSimpleWheelSim](API\Runtime\ChaosVehiclesCore\FSimpleWheelSim) & PWheel )


code: static bool IsWheelPowered ( const [EDifferentialType](API\Runtime\ChaosVehiclesCore\Chaos__EDifferentialType) DifferentialType, const [FSimpleWheelConfig::EAxleType](API\Runtime\ChaosVehiclesCore\FSimpleWheelConfig\EAxleType) AxleType, const bool EngineEnabled )


className: FTransmissionUtility

code: class FTransmissionUtility


code: static float CalculateSlipAngle ( float Y, float X )


description: Clamp value between 0 and 1

code: static void ClampNormalRange ( float & InOutValue )


description: Calculate Pitch angle in Radians from a Normalized Forward facing vector

code: static float PitchFromForwardVectorRadians ( const FVector & NormalizedForwardsVector )


description: Calculate Roll angle in Radians from a Normalized Right facing vector

code: static float RollFromRightVectorRadians ( const FVector & NormalizedRightVector )


description: Calculate turn radius from three points. Note: this function is quite inaccurate for large radii. Return 0 if there is no answer, i.e. points lie on a line

code: static float TurnRadiusFromThreePoints ( const FVector & PtA, const FVector & PtB, const FVector & PtC )


description: Calculate Yaw angle in Radians from a Normalized Forward facing vector

code: static float YawFromForwardVectorRadians ( const FVector & NormalizedForwardsVector )


className: IVehicleInterface

code: class IVehicleInterface


className: FVehicleUtility

code: class FVehicleUtility


code: static float AirDensity()


code: static float DryRoadFriction()


code: static float HalfAirDensity()


code: static float WetRoadFriction()


className: RealWorldConsts

code: struct RealWorldConsts


description: Typical gear ratios: Reverse −4.181, 1st 3.818, 2nd 2.294, 3rd 1.500, 4th 1.133, 5th 0.911 Source: Georg Rill. Road Vehicle Dynamics: Fundamentals and Modeling (Ground Vehicle Engineering Series) (p. 121). CRC Press.

code: namespace Chaos { enum EAerofoil { Fixed = 0, Wing, Rudder, Elevator, } }


code: namespace Chaos { enum eSimModuleState { Disabled, Disabled, Disabled, Enabled, Enabled = static_cast<uint64_t>(1) << 1, Enabled, } }


code: namespace Chaos { enum eSimModuleTypeFlags { NonFunctional = (1<<0), Raycast = (1<<1), Raycast, TorqueBased = (1 << 2), Velocity = (1 << 3), Velocity, } }


code: namespace Chaos { enum eSimType { Undefined = 0, Undefined = 0, Chassis, Thruster, Aerofoil, Wheel, Suspension, Axle, Transmission, Engine, Motor, Clutch, Wing, Wing, Wing, Wing, Rudder, Rudder, Rudder, Rudder, Elevator, Elevator, Elevator, Elevator, Propeller, } }


description: Angle of attack is the angle between the aerofoil and the airflow vector

code: float CalcAngleOfAttackDegrees ( const FVector & UpAxis, const FVector & InAirflowVector )


className: FAerofoilSettings

code: struct FAerofoilSettings

Type

type: EAerofoil


description: Center of lift moves fore/aft based on current AngleOfAttack

code: float CalcCentreOfLift()


description: Dynamic air pressure = 0.5 * AirDensity * Vsqr

code: float CalcDynamicPressure ( float VelocitySqr, float InAltitude )


description: Returns drag coefficient for the current angle of attack of the aerofoil surface

code: float CalcDragCoefficient ( float InAngleOfAttack, float InControlSurfaceAngle )


description: Returns lift coefficient for the current angle of attack of the aerofoil surface Cheating by making control surface part of entire aerofoil movement

code: float CalcLiftCoefficient ( float InAngleOfAttack, float InControlSurfaceAngle )


code: FVector GetCenterOfLiftOffset()


description: Get the friendly name for this module, primarily for logging & debugging module tree

code: virtual const [FString](API\Runtime\Core\Containers\FString) GetDebugName() const


description: Returns the combined force of lift and drag at an aerofoil in local coordinates for direct application to the aircrafts rigid body.

code: FVector GetForce ( const FVector & v, float Altitude, float DeltaTime )


description: The specific simulation type

code: virtual [eSimType](API\Runtime\ChaosVehiclesCore\SimModule\Chaos__eSimType) GetSimType() const


description: Is Module of a specific behavioral data type

code: virtual bool IsBehaviourType ( [eSimModuleTypeFlags](API\Runtime\ChaosVehiclesCore\SimModule\Chaos__eSimModuleTypeFlags) InType ) const


code: void SetControlSurface ( float CtrlSurfaceInput )


code: void SetDensityOfMedium ( float InDensity )


description: The main Simulation function that is called from the physics async callback thread

code: virtual void Simulate ( float DeltaTime, const [FAllInputs](API\Runtime\ChaosVehiclesCore\SimModule\FAllInputs) & Inputs, [FSimModuleTree](API\Runtime\ChaosVehiclesCore\SimModule\FSimModuleTree) & VehicleModuleSystem )


code: FAerofoilSimModule ( const [FAerofoilSettings](API\Runtime\ChaosVehiclesCore\SimModule\FAerofoilSettings) & Settings )


code: virtual ~FAerofoilSimModule()


className: FAerofoilSimModule

code: class FAerofoilSimModule : public [Chaos::ISimulationModuleBase](API\Runtime\ChaosVehiclesCore\SimModule\ISimulationModuleBase), public [Chaos::TSimModuleSettings< FAerofoilSettings >](API\Runtime\ChaosVehiclesCore\SimModule\TSimModuleSettings)

AerofoilId

type: int


className: FAllInputs

code: struct FAllInputs

ControlInputs

type: FControlInputs

HitResults

type: TMap< int32,FM...

VehicleWorldTransform

type: FTransform


className: FAxleSettings

description: Axle settings

code: struct FAxleSettings

AxleInertia

type: float


code: FAxleSimModule ( const [FAxleSettings](API\Runtime\ChaosVehiclesCore\SimModule\FAxleSettings) & Settings )


className: FAxleSimModule

description: A vehicle component that transmits torque from one source to another, i.e. from an engine or differential to wheels

code: class FAxleSimModule : public [Chaos::FTorqueSimModule](API\Runtime\ChaosVehiclesCore\SimModule\FTorqueSimModule), public [Chaos::TSimModuleSettings< FAxleSettings >](API\Runtime\ChaosVehiclesCore\SimModule\TSimModuleSettings)


className: FChassisSettings

description: Chassis settings

code: struct FChassisSettings


code: FChassisSimModule ( const [FChassisSettings](API\Runtime\ChaosVehiclesCore\SimModule\FChassisSettings) & Settings )


className: FChassisSimModule

code: class FChassisSimModule : public [Chaos::ISimulationModuleBase](API\Runtime\ChaosVehiclesCore\SimModule\ISimulationModuleBase), public [Chaos::TSimModuleSettings< FChassisSettings >](API\Runtime\ChaosVehiclesCore\SimModule\TSimModuleSettings)


className: FClutchSettings

code: struct FClutchSettings


code: virtual const [FString](API\Runtime\Core\Containers\FString) GetDebugName() const


description: Option to return debug text for drawing on the HUD in the Game Thread

code: virtual bool GetDebugString ( [FString](API\Runtime\Core\Containers\FString) & StringOut ) const


description: The specific simulation type

code: virtual [eSimType](API\Runtime\ChaosVehiclesCore\SimModule\Chaos__eSimType) GetSimType() const


code: FClutchSimModule ( const [FClutchSettings](API\Runtime\ChaosVehiclesCore\SimModule\FClutchSettings) & Settings )


className: FClutchSimModule

description: Input Controls - Clutch pedal, normalized value 0 to 1 expected Other Inputs - Outputs -

code: class FClutchSimModule : public [Chaos::FTorqueSimModule](API\Runtime\ChaosVehiclesCore\SimModule\FTorqueSimModule), public [Chaos::TSimModuleSettings< FClutchSettings >](API\Runtime\ChaosVehiclesCore\SimModule\TSimModuleSettings)


className: FControlInputs

code: struct FControlInputs

ChangeDown

type: bool


className: FCoreModularVehicleDebugParams

code: struct FCoreModularVehicleDebugParams


code: void Add ( const [FApplyForceAtPositionData](API\Runtime\ChaosVehiclesCore\SimModule\FDeferredForcesModular\FApplyForceAtPos-) & ApplyForceAtPositionDataIn )


code: void Add ( const [FAddTorqueInRadiansData](API\Runtime\ChaosVehiclesCore\SimModule\FDeferredForcesModular\FAddTorqueInRadi-) & ApplyTorqueDataIn )


code: void Add ( const [FAddImpulseData](API\Runtime\ChaosVehiclesCore\SimModule\FDeferredForcesModular\FAddImpulseData) & ApplyImpulseDataIn )


code: void Add ( const [FAddImpulseAtPositionData](API\Runtime\ChaosVehiclesCore\SimModule\FDeferredForcesModular\FAddImpulseAtPos-) & ApplyImpulseAtPositionDataIn )


code: void Apply ( [TArray](API\Runtime\Core\Containers\TArray)< [Chaos::FPBDRigidClusteredParticleHandle](API\Runtime\Chaos\Chaos\FPBDRigidClusteredParticleHandle) * > & Particles, [TArray](API\Runtime\Core\Containers\TArray)< [Chaos::FPBDRigidClusteredParticleHandle](API\Runtime\Chaos\Chaos\FPBDRigidClusteredParticleHandle) * > & ClusterParticles, const [TManagedArray](API\Runtime\Chaos\GeometryCollection\TManagedArray)< FTransform > & Transforms, const [TManagedArray](API\Runtime\Chaos\GeometryCollection\TManagedArray)< FTransform > & CollectionMassToLocal, const [TManagedArray](API\Runtime\Chaos\GeometryCollection\TManagedArray)< int32 > & Parent )


code: FAddImpulseAtPositionData &40; int TransformIndexIn, const FVector & ImpulseIn, const FVector & PositionIn &41;


className: FAddImpulseAtPositionData

code: struct FAddImpulseAtPositionData


code: FAddImpulseData &40; int TransformIndexIn, const FVector & ImpulseIn, const bool bVelChangeIn &41;


code: void Add ( const [FApplyForceData](API\Runtime\ChaosVehiclesCore\SimModule\FDeferredForcesModular\FApplyForceData) & ApplyForceDataIn )


className: FAddImpulseData

code: struct FAddImpulseData

Flags

type: EForceFlags


code: FAddTorqueInRadiansData &40; int TransformIndexIn, const FVector & TorqueIn, bool bAllowSubsteppingIn, bool bAccelChangeIn &41;


className: FAddTorqueInRadiansData

code: struct FAddTorqueInRadiansData


code: FApplyForceAtPositionData &40; int TransformIndexIn, const FVector & ForceIn, const FVector & PositionIn, bool bAllowSubsteppingIn, bool bIsLocalForceIn, bool bLevelSlope, const FColor & ColorIn &41;


className: FApplyForceAtPositionData

code: struct FApplyForceAtPositionData

DebugColor

type: FColor


code: FApplyForceData &40; int TransformIndexIn, const FVector & ForceIn, bool bAllowSubsteppingIn, bool bAccelChangeIn, bool bLevelSlope, const FColor & ColorIn &41;


className: FApplyForceData

code: struct FApplyForceData


code: [Chaos::FPBDRigidClusteredParticleHandle](API\Runtime\Chaos\Chaos\FPBDRigidClusteredParticleHandle) * GetParticle ( [TArray](API\Runtime\Core\Containers\TArray)< [Chaos::FPBDRigidClusteredParticleHandle](API\Runtime\Chaos\Chaos\FPBDRigidClusteredParticleHandle) * > & Particles, [TArray](API\Runtime\Core\Containers\TArray)< [Chaos::FPBDRigidClusteredParticleHandle](API\Runtime\Chaos\Chaos\FPBDRigidClusteredParticleHandle) * > & ClusterParticles, int TransformIndex, const [TManagedArray](API\Runtime\Chaos\GeometryCollection\TManagedArray)< FTransform > & Transforms, const [TManagedArray](API\Runtime\Chaos\GeometryCollection\TManagedArray)< FTransform > & CollectionMassToLocal, const [TManagedArray](API\Runtime\Chaos\GeometryCollection\TManagedArray)< int32 > & Parent, FTransform & TransformOut )


className: FDeferredForcesModular

code: class FDeferredForcesModular


className: FEngineSettings

code: struct FEngineSettings

TorqueCurve

type: FNormalisedGrap...


code: virtual const [FString](API\Runtime\Core\Containers\FString) GetDebugName() const


code: virtual bool GetDebugString ( [FString](API\Runtime\Core\Containers\FString) & StringOut ) const


code: float GetEngineIdleSpeed() const


code: float GetEngineTorque ( float ThrottlePosition, float EngineRPM )


description: The specific simulation type

code: virtual [eSimType](API\Runtime\ChaosVehiclesCore\SimModule\Chaos__eSimType) GetSimType() const


code: float GetTorqueFromRPM ( float RPM, bool LimitToIdle )


code: virtual void Simulate ( float DeltaTime, const [FAllInputs](API\Runtime\ChaosVehiclesCore\SimModule\FAllInputs) & Inputs, [FSimModuleTree](API\Runtime\ChaosVehiclesCore\SimModule\FSimModuleTree) & VehicleModuleSystem )


code: FEngineSimModule ( const [FEngineSettings](API\Runtime\ChaosVehiclesCore\SimModule\FEngineSettings) & Settings )


code: virtual ~FEngineSimModule()


className: FEngineSimModule

code: class FEngineSimModule : public [Chaos::FTorqueSimModule](API\Runtime\ChaosVehiclesCore\SimModule\FTorqueSimModule), public [Chaos::TSimModuleSettings< FEngineSettings >](API\Runtime\ChaosVehiclesCore\SimModule\TSimModuleSettings)


className: FModuleHitResults

code: struct FModuleHitResults


className: FMotorSettings

description: Motor settings

code: struct FMotorSettings


code: FMotorSimModule ( const [FMotorSettings](API\Runtime\ChaosVehiclesCore\SimModule\FMotorSettings) & Settings )


className: FMotorSimModule

description: A vehicle component that provides torque output based on a torque control input The output torque is based on a square function style curve, zero at 0.0 and MaxRPM, and 1.0 at mid RPM

code: class FMotorSimModule : public [Chaos::FTorqueSimModule](API\Runtime\ChaosVehiclesCore\SimModule\FTorqueSimModule), public [Chaos::TSimModuleSettings< FMotorSettings >](API\Runtime\ChaosVehiclesCore\SimModule\TSimModuleSettings)


code: [ISimulationModuleBase](API\Runtime\ChaosVehiclesCore\SimModule\ISimulationModuleBase) * AccessSimModule ( int Index ) const


code: int AddNodeBelow ( int AtIndex, [ISimulationModuleBase](API\Runtime\ChaosVehiclesCore\SimModule\ISimulationModuleBase) * SimModule )


code: int AddRoot ( [ISimulationModuleBase](API\Runtime\ChaosVehiclesCore\SimModule\ISimulationModuleBase) * SimModule )


code: void DeleteNode ( int AtIndex )


code: void DeleteNodesBelow ( int NodeIdx )


code: static INVALID_INDEX = -1;


className: FSimModuleNode

code: struct FSimModuleNode

Children

type: TSet< int >

SimModule

type: ISimulationModu...


code: const [TSet](API\Runtime\Core\Containers\TSet)< int > & GetChildren ( int Index ) const


code: const [FDeferredForcesModular](API\Runtime\ChaosVehiclesCore\SimModule\FDeferredForcesModular) & GetDeferredForces() const


code: int GetNumNodes() const


code: int GetParent ( int Index ) const


code: void GetRootNodes ( [TArray](API\Runtime\Core\Containers\TArray)< int > & RootNodesOut )


code: const [ISimulationModuleBase](API\Runtime\ChaosVehiclesCore\SimModule\ISimulationModuleBase) * GetSimModule ( int Index ) const


code: const [TArray](API\Runtime\Core\Containers\TArray)< [FSimModuleNode](API\Runtime\ChaosVehiclesCore\SimModule\FSimModuleTree\FSimModuleNode) > & GetSimulationModuleTree()


code: int InsertNodeAbove ( int AtIndex, [ISimulationModuleBase](API\Runtime\ChaosVehiclesCore\SimModule\ISimulationModuleBase) * SimModule )


code: bool IsValidNode ( int Index ) const


code: void Reparent ( int Index, int ParentIndex )


code: int NumActiveNodes() const


code: void Simulate ( float DeltaTime, [FAllInputs](API\Runtime\ChaosVehiclesCore\SimModule\FAllInputs) & Inputs, [FGeometryCollectionPhysicsProxy](API\Runtime\Chaos\PhysicsProxy\FGeometryCollectionPhysicsProxy) * PhysicsProxy )


code: void SimulateNode ( float DeltaTime, [FAllInputs](API\Runtime\ChaosVehiclesCore\SimModule\FAllInputs) & Inputs, int NodeIdx )


code: void UpdateModuleVelocites ( [FGeometryCollectionPhysicsProxy](API\Runtime\Chaos\PhysicsProxy\FGeometryCollectionPhysicsProxy) * PhysicsProxy )


className: FSimModuleTree

code: class FSimModuleTree

DeferredForces

type: FDeferredForces...

FreeList

type: TArray< int >

SimulationModuleTree

type: TArray<FSimMod...


className: FSpringTrace

description: Suspension world ray/shape trace start and end positions

code: struct FSpringTrace


className: FSuspensionSettings

code: struct FSuspensionSettings


code: virtual const [FString](API\Runtime\Core\Containers\FString) GetDebugName() const


code: const FVector GetLocation() const


code: const FVector & GetRestLocation() const


description: The specific simulation type

code: virtual [eSimType](API\Runtime\ChaosVehiclesCore\SimModule\Chaos__eSimType) GetSimType() const


code: float GetSpringLength() const


code: int GetWheelSimTreeIndex() const


code: void GetWorldRaycastLocation ( const FTransform & BodyTransform, float WheelRadius, [FSpringTrace](API\Runtime\ChaosVehiclesCore\SimModule\FSpringTrace) & OutTrace )


code: virtual bool IsBehaviourType ( [eSimModuleTypeFlags](API\Runtime\ChaosVehiclesCore\SimModule\Chaos__eSimModuleTypeFlags) InType ) const


code: void SetLocation ( const FVector & LocationIn )


description: , SwaybarEffect(0.5f) , DampingRatio(0.3f)

code: FSuspensionSettings()


code: void SetSpringLength ( float InLength, float WheelRadius )


code: void SetWheelSimTreeIndex ( int WheelTreeIndexIn )