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

#include <EngineTypes.h>

Public Member Functions

 FRigidBodyErrorCorrection ()
 

Public Attributes

float PingExtrapolation
 
float PingLimit
 
float ErrorPerLinearDifference
 
float ErrorPerAngularDifference
 
float MaxRestoredStateError
 
float MaxLinearHardSnapDistance
 
float PositionLerp
 
float AngleLerp
 
float LinearVelocityCoefficient
 
float AngularVelocityCoefficient
 
float ErrorAccumulationSeconds
 
float ErrorAccumulationDistanceSq
 
float ErrorAccumulationSimilarity
 

Detailed Description

Rigid body error correction data

Constructor & Destructor Documentation

◆ FRigidBodyErrorCorrection()

FRigidBodyErrorCorrection::FRigidBodyErrorCorrection ( )
inline

Member Data Documentation

◆ AngleLerp

float FRigidBodyErrorCorrection::AngleLerp

How much to directly lerp to the correct angle.

◆ AngularVelocityCoefficient

float FRigidBodyErrorCorrection::AngularVelocityCoefficient

This is the angular analog to LinearVelocityCoefficient.

◆ ErrorAccumulationDistanceSq

float FRigidBodyErrorCorrection::ErrorAccumulationDistanceSq

If the body has moved less than the square root of this amount towards a resolved state in the previous frame, then error may accumulate towards a hard snap.

◆ ErrorAccumulationSeconds

float FRigidBodyErrorCorrection::ErrorAccumulationSeconds

Number of seconds to remain in a heuristically unresolveable state before hard snapping.

◆ ErrorAccumulationSimilarity

float FRigidBodyErrorCorrection::ErrorAccumulationSimilarity

If the previous error projected onto the current error is greater than this value (indicating "similarity" between states), then error may accumulate towards a hard snap.

◆ ErrorPerAngularDifference

float FRigidBodyErrorCorrection::ErrorPerAngularDifference

Error per degree

◆ ErrorPerLinearDifference

float FRigidBodyErrorCorrection::ErrorPerLinearDifference

Error per centimeter

◆ LinearVelocityCoefficient

float FRigidBodyErrorCorrection::LinearVelocityCoefficient

This is the coefficient k in the differential equation: dx/dt = k ( x_target(t) - x(t) ), which is used to update the velocity in a replication step.

◆ MaxLinearHardSnapDistance

float FRigidBodyErrorCorrection::MaxLinearHardSnapDistance

◆ MaxRestoredStateError

float FRigidBodyErrorCorrection::MaxRestoredStateError

Maximum allowable error for a state to be considered "resolved"

◆ PingExtrapolation

float FRigidBodyErrorCorrection::PingExtrapolation

Value between 0 and 1 which indicates how much velocity and ping based correction to use

◆ PingLimit

float FRigidBodyErrorCorrection::PingLimit

For the purpose of extrapolation, ping will be clamped to this value

◆ PositionLerp

float FRigidBodyErrorCorrection::PositionLerp

How much to directly lerp to the correct position. Generally this should be very low, if not zero. A higher value will increase precision along with jerkiness.


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