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

#include <PhysicsProxyBase.h>

+ Inheritance diagram for FProxyInterpolationBase:

Public Member Functions

 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 EProxyInterpolationType GetInterpolationType () const
 
virtual const bool IsErrorSmoothing () const
 
virtual const Chaos::FVec3 GetErrorX (const Chaos::FRealSingle Alpha) const
 
virtual const FQuat GetErrorR (const Chaos::FRealSingle Alpha) const
 
virtual void AccumlateErrorXR (const Chaos::FVec3 X, const FQuat R, const int32 CurrentSimTick, const int32 ErrorSmoothDuration)
 
virtual const bool UpdateError (const int32 CurrentSimTick, const Chaos::FReal AsyncFixedTimeStep)
 
virtual const bool DirectionalDecay (Chaos::FVec3 Direction)
 
virtual const bool DirectionalDecay (Chaos::FVec3 Direction, const float ErrorDirectionalDecayMultiplier)
 
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)
 
virtual FErrorInterpolationSettingsGetErrorInterpolationSettings ()
 

Static Public Attributes

static const EProxyInterpolationType InterpolationType = EProxyInterpolationType::Base
 

Protected Attributes

int32 PullDataInterpIdx_External
 
int32 InterpChannel_External
 

Constructor & Destructor Documentation

◆ FProxyInterpolationBase()

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

◆ ~FProxyInterpolationBase()

virtual FProxyInterpolationBase::~FProxyInterpolationBase ( )
inlinevirtual

Member Function Documentation

◆ AccumlateErrorXR()

virtual void FProxyInterpolationBase::AccumlateErrorXR ( const Chaos::FVec3  X,
const FQuat  R,
const int32  CurrentSimTick,
const int32  ErrorSmoothDuration 
)
inlinevirtual

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

Reimplemented in FProxyInterpolationError.

◆ DirectionalDecay() [1/2]

virtual const bool FProxyInterpolationBase::DirectionalDecay ( Chaos::FVec3  Direction)
inlinevirtual

EXPERIMENTAL - Decay error based on moved direction and distance

◆ DirectionalDecay() [2/2]

virtual const bool FProxyInterpolationBase::DirectionalDecay ( Chaos::FVec3  Direction,
const float  ErrorDirectionalDecayMultiplier 
)
inlinevirtual

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 in FProxyInterpolationError.

◆ GetErrorInterpolationSettings()

virtual FErrorInterpolationSettings * FProxyInterpolationBase::GetErrorInterpolationSettings ( )
inlinevirtual

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

Reimplemented in FProxyInterpolationError.

◆ GetErrorR()

virtual const FQuat FProxyInterpolationBase::GetErrorR ( const Chaos::FRealSingle  Alpha) const
inlinevirtual

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

Reimplemented in FProxyInterpolationError.

◆ GetErrorVelocitySmoothingAlpha()

virtual const Chaos::FRealSingle FProxyInterpolationBase::GetErrorVelocitySmoothingAlpha ( const int32  ErrorVelocitySmoothDuration) const
inlinevirtual

EXPERIMENTAL - Returns the Alpha of how much to take previous velocity into account, used to lerp from linear extrapolation to the predicted position based on previous velocity

Reimplemented in FProxyInterpolationErrorVelocity.

◆ GetErrorVelocitySmoothingX()

virtual const Chaos::FVec3 FProxyInterpolationBase::GetErrorVelocitySmoothingX ( const Chaos::FRealSingle  Alpha) const
inlinevirtual

EXPERIMENTAL - Get the position of the velocity-based correction, taking current Alpha between GT and PT into account

Reimplemented in FProxyInterpolationErrorVelocity.

◆ GetErrorX()

virtual const Chaos::FVec3 FProxyInterpolationBase::GetErrorX ( const Chaos::FRealSingle  Alpha) const
inlinevirtual

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

Reimplemented in FProxyInterpolationError.

◆ GetInterpChannel_External()

int32 FProxyInterpolationBase::GetInterpChannel_External ( ) const
inline

◆ GetInterpolationType()

virtual const EProxyInterpolationType FProxyInterpolationBase::GetInterpolationType ( ) const
inlinevirtual

Get this interpolation structs type

Reimplemented in FProxyInterpolationError, and FProxyInterpolationErrorVelocity.

◆ GetPullDataInterpIdx_External()

int32 FProxyInterpolationBase::GetPullDataInterpIdx_External ( ) const
inline

◆ IsErrorSmoothing()

virtual const bool FProxyInterpolationBase::IsErrorSmoothing ( ) const
inlinevirtual

If currently correcting an error through interpolation

Reimplemented in FProxyInterpolationError.

◆ IsErrorVelocitySmoothing()

virtual const bool FProxyInterpolationBase::IsErrorVelocitySmoothing ( ) const
inlinevirtual

EXPERIMENTAL - If currently correcting error while taking velocity into account

Reimplemented in FProxyInterpolationErrorVelocity.

◆ SetInterpChannel_External()

void FProxyInterpolationBase::SetInterpChannel_External ( const int32  Channel)
inline

◆ SetPullDataInterpIdx_External()

void FProxyInterpolationBase::SetPullDataInterpIdx_External ( const int32  Idx)
inline

◆ SetVelocitySmoothing()

virtual void FProxyInterpolationBase::SetVelocitySmoothing ( const Chaos::FVec3  CurrV,
const Chaos::FVec3  CurrX,
const int32  ErrorVelocitySmoothDuration 
)
inlinevirtual

EXPERIMENTAL - Register the current velocity and position for use in velocity correction calculations

Reimplemented in FProxyInterpolationErrorVelocity.

◆ UpdateError()

virtual const bool FProxyInterpolationBase::UpdateError ( const int32  CurrentSimTick,
const Chaos::FReal  AsyncFixedTimeStep 
)
inlinevirtual

Tick current error data and decay error

Reimplemented in FProxyInterpolationError, and FProxyInterpolationErrorVelocity.

Member Data Documentation

◆ InterpChannel_External

int32 FProxyInterpolationBase::InterpChannel_External
protected

◆ InterpolationType

const EProxyInterpolationType FProxyInterpolationBase::InterpolationType = EProxyInterpolationType::Base
static

This interpolation structs type

◆ PullDataInterpIdx_External

int32 FProxyInterpolationBase::PullDataInterpIdx_External
protected

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