UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
FProxyInterpolationError Struct Reference

#include <PhysicsProxyBase.h>

+ Inheritance diagram for FProxyInterpolationError:

Public Types

using Super = FProxyInterpolationBase
 

Public Member Functions

 FProxyInterpolationError (const int32 PullDataInterpIdx=INDEX_NONE, const int32 InterpChannel=0)
 
virtual ~FProxyInterpolationError ()
 
virtual const EProxyInterpolationType GetInterpolationType () const override
 
virtual CHAOS_API const bool IsErrorSmoothing () const override
 
virtual const Chaos::FVec3 GetErrorX (const Chaos::FRealSingle Alpha) const override
 
virtual const FQuat GetErrorR (const Chaos::FRealSingle Alpha) const override
 
virtual CHAOS_API void AccumlateErrorXR (const Chaos::FVec3 X, const FQuat R, const int32 CurrentSimTick, const int32 ErrorSmoothDuration) override
 
virtual CHAOS_API const bool UpdateError (const int32 CurrentSimTick, const Chaos::FReal AsyncFixedTimeStep) override
 
virtual CHAOS_API const bool DirectionalDecay (Chaos::FVec3 Direction, float ErrorDirectionalDecayMultiplier) override
 
FErrorInterpolationSettingsGetOrCreateErrorInterpolationSettings ()
 
virtual FErrorInterpolationSettingsGetErrorInterpolationSettings () override
 
- Public Member Functions inherited from FProxyInterpolationBase
 FProxyInterpolationBase (const int32 PullDataInterpIdx=INDEX_NONE, const int32 InterpChannel=0)
 
virtual ~FProxyInterpolationBase ()
 
int32 GetPullDataInterpIdx_External () const
 
void SetPullDataInterpIdx_External (const int32 Idx)
 
int32 GetInterpChannel_External () const
 
void SetInterpChannel_External (const int32 Channel)
 
virtual const bool DirectionalDecay (Chaos::FVec3 Direction)
 
virtual const bool IsErrorVelocitySmoothing () const
 
virtual const Chaos::FRealSingle GetErrorVelocitySmoothingAlpha (const int32 ErrorVelocitySmoothDuration) const
 
virtual const Chaos::FVec3 GetErrorVelocitySmoothingX (const Chaos::FRealSingle Alpha) const
 
virtual void SetVelocitySmoothing (const Chaos::FVec3 CurrV, const Chaos::FVec3 CurrX, const int32 ErrorVelocitySmoothDuration)
 

Static Public Attributes

static const EProxyInterpolationType InterpolationType = EProxyInterpolationType::ErrorLinear
 
- Static Public Attributes inherited from FProxyInterpolationBase
static const EProxyInterpolationType InterpolationType = EProxyInterpolationType::Base
 

Protected Member Functions

virtual CHAOS_API const bool DecayError (const Chaos::FReal AsyncFixedTimeStep)
 
virtual void Reset ()
 

Protected Attributes

int32 LastSimTick = 0
 
int32 SimTicks = 0
 
int32 EndDecayTick = 0
 
Chaos::FVec3 ErrorX = Chaos::FVec3::Zero()
 
Chaos::FVec3 ErrorXPrev = Chaos::FVec3::Zero()
 
FQuat ErrorR = FQuat::Identity
 
FQuat ErrorRPrev = FQuat::Identity
 
TUniquePtr< FErrorInterpolationSettingsErrorInterpolationSettings = nullptr
 
- Protected Attributes inherited from FProxyInterpolationBase
int32 PullDataInterpIdx_External
 
int32 InterpChannel_External
 

Member Typedef Documentation

◆ Super

Constructor & Destructor Documentation

◆ FProxyInterpolationError()

FProxyInterpolationError::FProxyInterpolationError ( const int32  PullDataInterpIdx = INDEX_NONE,
const int32  InterpChannel = 0 
)
inline

◆ ~FProxyInterpolationError()

virtual FProxyInterpolationError::~FProxyInterpolationError ( )
inlinevirtual

Member Function Documentation

◆ AccumlateErrorXR()

void FProxyInterpolationError::AccumlateErrorXR ( const Chaos::FVec3  X,
const FQuat  R,
const int32  CurrentSimTick,
const int32  ErrorSmoothDuration 
)
overridevirtual

Add X and R error onto current error to correct through interpolation

Reimplemented from FProxyInterpolationBase.

◆ DecayError()

const bool FProxyInterpolationError::DecayError ( const Chaos::FReal  AsyncFixedTimeStep)
protectedvirtual

◆ DirectionalDecay()

const bool FProxyInterpolationError::DirectionalDecay ( Chaos::FVec3  Direction,
float  ErrorDirectionalDecayMultiplier 
)
overridevirtual

EXPERIMENTAL - Decay error based on moved direction and distance

Parameters
ErrorDirectionalDecayMultiplieris a multiplier where 0.25 means a 25% decay along the direction of physics movement that aligns with the error offset direction, parameter gets overridden if there are custom settings for this particle

Reimplemented from FProxyInterpolationBase.

◆ GetErrorInterpolationSettings()

virtual FErrorInterpolationSettings * FProxyInterpolationError::GetErrorInterpolationSettings ( )
inlineoverridevirtual

Get FErrorInterpolationSettings which stores custom settings for render interpolation error corrections, returns nullptr if there are no custom settings

Reimplemented from FProxyInterpolationBase.

◆ GetErrorR()

virtual const FQuat FProxyInterpolationError::GetErrorR ( const Chaos::FRealSingle  Alpha) const
inlineoverridevirtual

Get the rotation of the current error correction, taking current Alpha between GT and PT into account

Reimplemented from FProxyInterpolationBase.

◆ GetErrorX()

virtual const Chaos::FVec3 FProxyInterpolationError::GetErrorX ( const Chaos::FRealSingle  Alpha) const
inlineoverridevirtual

Get the position of the current error correction, taking current Alpha between GT and PT into account

Reimplemented from FProxyInterpolationBase.

◆ GetInterpolationType()

virtual const EProxyInterpolationType FProxyInterpolationError::GetInterpolationType ( ) const
inlineoverridevirtual

Get this interpolation structs type

Reimplemented from FProxyInterpolationBase.

Reimplemented in FProxyInterpolationErrorVelocity.

◆ GetOrCreateErrorInterpolationSettings()

FErrorInterpolationSettings & FProxyInterpolationError::GetOrCreateErrorInterpolationSettings ( )
inline

Get or create FErrorInterpolationSettings to stores custom settings for render interpolation error corrections

◆ IsErrorSmoothing()

const bool FProxyInterpolationError::IsErrorSmoothing ( ) const
overridevirtual

If currently correcting an error through interpolation

Reimplemented from FProxyInterpolationBase.

◆ Reset()

virtual void FProxyInterpolationError::Reset ( )
inlineprotectedvirtual

◆ UpdateError()

const bool FProxyInterpolationError::UpdateError ( const int32  CurrentSimTick,
const Chaos::FReal  AsyncFixedTimeStep 
)
overridevirtual

Tick current error data and decay error

Reimplemented from FProxyInterpolationBase.

Reimplemented in FProxyInterpolationErrorVelocity.

Member Data Documentation

◆ EndDecayTick

int32 FProxyInterpolationError::EndDecayTick = 0
protected

◆ ErrorInterpolationSettings

TUniquePtr<FErrorInterpolationSettings> FProxyInterpolationError::ErrorInterpolationSettings = nullptr
protected

◆ ErrorR

FQuat FProxyInterpolationError::ErrorR = FQuat::Identity
protected

◆ ErrorRPrev

FQuat FProxyInterpolationError::ErrorRPrev = FQuat::Identity
protected

◆ ErrorX

Chaos::FVec3 FProxyInterpolationError::ErrorX = Chaos::FVec3::Zero()
protected

◆ ErrorXPrev

Chaos::FVec3 FProxyInterpolationError::ErrorXPrev = Chaos::FVec3::Zero()
protected

◆ InterpolationType

const EProxyInterpolationType FProxyInterpolationError::InterpolationType = EProxyInterpolationType::ErrorLinear
static

◆ LastSimTick

int32 FProxyInterpolationError::LastSimTick = 0
protected

◆ SimTicks

int32 FProxyInterpolationError::SimTicks = 0
protected

The documentation for this struct was generated from the following files: