UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
RewindData.h File Reference

Go to the source code of this file.

Classes

struct  Chaos::FBaseRewindHistory
 
struct  Chaos::TDataRewindHistory< DataType >
 
struct  Chaos::FFrameAndPhase
 
struct  Chaos::NoEntryInSync< THandle, T, bNoEntryIsHead >
 
struct  Chaos::NoEntryInSync< THandle, T, false >
 
struct  Chaos::FPropertyInterval
 
class  Chaos::TParticlePropertyBuffer< T, PropName, bNoEntryIsHead >
 
struct  Chaos::FDirtyPropData
 
struct  Chaos::FConstDirtyPropData
 
class  Chaos::TPerShapeDataStateProperty< T, PropName >
 
struct  Chaos::FPerShapeDataStateBase
 
class  Chaos::FPerShapeDataState
 
struct  Chaos::FShapesArrayStateBase
 
class  Chaos::TShapesArrayState< TParticle >
 
struct  Chaos::FGeometryParticleStateBase
 
class  Chaos::FGeometryParticleState
 
struct  Chaos::FJointStateBase
 
class  Chaos::FJointState
 
class  Chaos::TDirtyObjects< TVal >
 
class  Chaos::FRewindData
 
struct  Chaos::FResimDebugInfo
 
class  Chaos::IRewindCallback
 

Namespaces

namespace  Chaos
 
namespace  Chaos::Private
 

Macros

#define VALIDATE_REWIND_DATA   0
 
#define DEBUG_REWIND_DATA   0
 
#define DEBUG_NETWORK_PHYSICS   0
 
#define REWIND_CHAOS_PARTICLE_PROPERTY(PROP, NAME)
 
#define REWIND_CHAOS_ZERO_PARTICLE_PROPERTY(PROP, NAME)
 
#define REWIND_PARTICLE_STATIC_PROPERTY(PROP, NAME)
 
#define REWIND_PARTICLE_KINEMATIC_PROPERTY(PROP, NAME)
 
#define REWIND_PARTICLE_RIGID_PROPERTY(PROP, NAME)
 
#define REWIND_PARTICLE_ZERO_PROPERTY(PROP, NAME)
 
#define REWIND_JOINT_PROPERTY(PROP, FUNC_NAME, NAME)
 
#define REWIND_PARTICLE_TO_STR(PropName)   Out += FString::Printf(TEXT(#PropName":%s\n"), *ToStringHelper(PropName()));
 
#define CHAOS_INNER_JOINT_PROPERTY(OuterProp, FuncName, Inner, InnerType)   REWIND_JOINT_PROPERTY(OuterProp, FuncName, Inner);
 
#define CHAOS_INNER_JOINT_PROPERTY(OuterProp, FuncName, Inner, InnerType)   Out += FString::Printf(TEXT(#FuncName":%s\n"), *ToStringHelper(Get##FuncName()));
 

Enumerations

enum  Chaos::EDesyncResult { Chaos::InSync , Chaos::Desync , Chaos::NeedInfo }
 

Functions

template<typename TData , typename TObj >
void Chaos::CopyDataFromObject (TData &Data, const TObj &Obj)
 
void Chaos::CopyDataFromObject (FPBDJointSettings &Data, const FPBDJointConstraintHandle &Joint)
 
template<typename T >
FString Chaos::ToStringHelper (const T &Val)
 
template<typename T >
FString Chaos::ToStringHelper (const TVector< T, 2 > &Val)
 
FString Chaos::ToStringHelper (void *Val)
 
FString Chaos::ToStringHelper (const FReal Val)
 
FString Chaos::ToStringHelper (const FRealSingle Val)
 
FString Chaos::ToStringHelper (const EObjectStateType Val)
 
FString Chaos::ToStringHelper (const EPlasticityType Val)
 
FString Chaos::ToStringHelper (const EJointForceMode Val)
 
FString Chaos::ToStringHelper (const EJointMotionType Val)
 
FString Chaos::ToStringHelper (const bool Val)
 
FString Chaos::ToStringHelper (const int32 Val)
 
int32 Chaos::ComputeCircularSize (int32 NumFrames)
 
template<typename T >
const T * Chaos::ConstifyHelper (T *Ptr)
 
template<typename T >
Chaos::NoRefHelper (const T &Ref)
 

Macro Definition Documentation

◆ CHAOS_INNER_JOINT_PROPERTY [1/2]

#define CHAOS_INNER_JOINT_PROPERTY (   OuterProp,
  FuncName,
  Inner,
  InnerType 
)    REWIND_JOINT_PROPERTY(OuterProp, FuncName, Inner);

◆ CHAOS_INNER_JOINT_PROPERTY [2/2]

#define CHAOS_INNER_JOINT_PROPERTY (   OuterProp,
  FuncName,
  Inner,
  InnerType 
)    Out += FString::Printf(TEXT(#FuncName":%s\n"), *ToStringHelper(Get##FuncName()));

◆ DEBUG_NETWORK_PHYSICS

#define DEBUG_NETWORK_PHYSICS   0

◆ DEBUG_REWIND_DATA

#define DEBUG_REWIND_DATA   0

◆ REWIND_CHAOS_PARTICLE_PROPERTY

#define REWIND_CHAOS_PARTICLE_PROPERTY (   PROP,
  NAME 
)
Value:
const auto Data = State ? State->PROP.Read(FrameAndPhase, Pool) : nullptr;\
return Data ? Data->NAME() : Head.NAME();\

◆ REWIND_CHAOS_ZERO_PARTICLE_PROPERTY

#define REWIND_CHAOS_ZERO_PARTICLE_PROPERTY (   PROP,
  NAME 
)
Value:
const auto Data = State ? State->PROP.Read(FrameAndPhase, Pool) : nullptr;\
return Data ? Data->NAME() : ZeroVector;\

◆ REWIND_JOINT_PROPERTY

#define REWIND_JOINT_PROPERTY (   PROP,
  FUNC_NAME,
  NAME 
)
Value:
decltype(auto) Get##FUNC_NAME() const\
{\
const auto Data = State ? State->PROP.Read(FrameAndPhase, Pool) : nullptr;\
return Data ? Data->NAME : Head.Get##PROP().NAME;\
}\
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127

◆ REWIND_PARTICLE_KINEMATIC_PROPERTY

#define REWIND_PARTICLE_KINEMATIC_PROPERTY (   PROP,
  NAME 
)
Value:
decltype(auto) NAME() const\
{\
auto& Head = *Particle.CastToKinematicParticle();\
}\

◆ REWIND_PARTICLE_RIGID_PROPERTY

#define REWIND_PARTICLE_RIGID_PROPERTY (   PROP,
  NAME 
)
Value:
decltype(auto) NAME() const\
{\
auto& Head = *Particle.CastToRigidParticle();\
}\

◆ REWIND_PARTICLE_STATIC_PROPERTY

#define REWIND_PARTICLE_STATIC_PROPERTY (   PROP,
  NAME 
)
Value:
decltype(auto) NAME() const\
{\
auto& Head = Particle;\
}\

◆ REWIND_PARTICLE_TO_STR

#define REWIND_PARTICLE_TO_STR (   PropName)    Out += FString::Printf(TEXT(#PropName":%s\n"), *ToStringHelper(PropName()));

◆ REWIND_PARTICLE_ZERO_PROPERTY

#define REWIND_PARTICLE_ZERO_PROPERTY (   PROP,
  NAME 
)
Value:
decltype(auto) NAME() const\
{\
auto& Head = *Particle.CastToRigidParticle();\
}\

◆ VALIDATE_REWIND_DATA

#define VALIDATE_REWIND_DATA   0