44 UE_DEPRECATED(5.5,
"GetResimulationErrorThreshold has been renamed, please use GetResimulationErrorPositionThreshold.")
103 class FPersistentPhysicsTask;
105 class FPhysicsSolverBase;
265 SolverActorClassProvider = Provider;
300 bool bPersistentTaskSpawned;
304 Chaos::FPersistentPhysicsTask* PhysicsInnerTask;
324 UClass* SolverActorRequiredBaseClass;
344 bool bModuleInitialized;
#define check(expr)
Definition AssertionMacros.h:314
ESolverFlags
Definition ChaosSolversModule.h:139
#define UE_DEPRECATED(Version, Message)
Definition CoreMiscDefines.h:302
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
UE::FPlatformRecursiveMutex FCriticalSection
Definition CriticalSection.h:53
#define ENUM_CLASS_FLAGS(Enum)
Definition EnumClassFlags.h:6
EChaosThreadingMode
Definition PhysicsCoreTypes.h:21
Definition ChaosSolversModule.h:112
Definition PBDRigidsSolver.h:84
Definition PhysicsSolverBase.h:313
Definition AsyncWork.h:585
Definition ChaosSolversModule.h:146
void UnlockSolvers()
Definition ChaosSolversModule.h:277
CHAOS_API FChaosSolversModule()
Definition ChaosSolversModule.cpp:68
CHAOS_API void StartupModule()
Definition ChaosSolversModule.cpp:99
void RegisterSolverActorClassProvider(IChaosSolverActorClassProvider *Provider)
Definition ChaosSolversModule.h:263
CHAOS_API void OnDestroyMaterial(Chaos::FMaterialHandle InHandle)
Definition ChaosSolversModule.cpp:637
CHAOS_API UClass * GetSolverActorClass() const
Definition ChaosSolversModule.cpp:238
CHAOS_API void DumpHierarchyStats(int32 *OutOptMaxCellElements=nullptr)
Definition ChaosSolversModule.cpp:318
CHAOS_API TArray< const Chaos::FPhysicsSolverBase * > GetSolvers(const UObject *InOwner) const
Definition ChaosSolversModule.cpp:279
CHAOS_API void OnCreateMaterialMask(Chaos::FMaterialMaskHandle InHandle)
Definition ChaosSolversModule.cpp:681
CHAOS_API void OnUpdateMaterial(Chaos::FMaterialHandle InHandle)
Definition ChaosSolversModule.cpp:594
CHAOS_API void ShutdownModule()
Definition ChaosSolversModule.cpp:104
void SetSettingsProvider(IChaosSettingsProvider *InProvider)
Definition ChaosSolversModule.h:271
CHAOS_API void Shutdown()
Definition ChaosSolversModule.cpp:129
CHAOS_API bool IsPersistentTaskRunning() const
Definition ChaosSolversModule.cpp:154
CHAOS_API void OnDestroyMaterialMask(Chaos::FMaterialMaskHandle InHandle)
Definition ChaosSolversModule.cpp:703
CHAOS_API bool IsPersistentTaskEnabled() const
Definition ChaosSolversModule.cpp:149
void LockSolvers()
Definition ChaosSolversModule.h:276
CHAOS_API TArray< Chaos::FPhysicsSolverBase * > GetSolversMutable(const UObject *InOwner)
Definition ChaosSolversModule.cpp:288
CHAOS_API void MigrateSolver(Chaos::FPhysicsSolverBase *InSolver, const UObject *InNewOwner)
Definition ChaosSolversModule.cpp:213
CHAOS_API void GetSolverUpdatePrerequisites(FGraphEventArray &InPrerequisiteContainer)
CHAOS_API Chaos::FPBDRigidsSolver * CreateSolver(UObject *InOwner, Chaos::FReal InAsyncDt, Chaos::EThreadingMode ThreadingMode=Chaos::EThreadingMode::SingleThread, const FName &DebugName=NAME_None)
Definition ChaosSolversModule.cpp:179
CHAOS_API bool IsValidSolverActorClass(UClass *Class) const
Definition ChaosSolversModule.cpp:244
CHAOS_API void OnCreateMaterial(Chaos::FMaterialHandle InHandle)
Definition ChaosSolversModule.cpp:616
CHAOS_API void DestroySolver(Chaos::FPhysicsSolverBase *InState)
Definition ChaosSolversModule.cpp:249
CHAOS_API void Initialize()
Definition ChaosSolversModule.cpp:111
CHAOS_API const TArray< Chaos::FPhysicsSolverBase * > & GetAllSolvers() const
Definition ChaosSolversModule.cpp:274
static CHAOS_API FChaosSolversModule * GetModule()
Definition ChaosSolversModule.cpp:55
CHAOS_API Chaos::FPersistentPhysicsTask * GetDedicatedTask() const
Definition ChaosSolversModule.cpp:159
void SetSolverActorClass(UClass *InActorClass, UClass *InActorRequiredBaseClass)
Definition ChaosSolversModule.h:198
CHAOS_API const IChaosSettingsProvider & GetSettingsProvider() const
Definition ChaosSolversModule.cpp:725
CHAOS_API void SyncTask(bool bForceBlockingSync=false)
Definition ChaosSolversModule.cpp:164
CHAOS_API void OnUpdateMaterialMask(Chaos::FMaterialMaskHandle InHandle)
Definition ChaosSolversModule.cpp:659
Definition IDelegateInstance.h:14
Definition NameTypes.h:617
Definition ThreadSafeBool.h:17
Definition ThreadSafeCounter.h:14
Definition ChaosSolversModule.h:30
virtual float GetResimulationErrorThreshold() const
Definition ChaosSolversModule.h:45
virtual bool GetResimulationErrorLinearVelocityThresholdEnabled() const
Definition ChaosSolversModule.h:70
virtual float GetResimulationErrorLinearVelocityThreshold() const
Definition ChaosSolversModule.h:75
virtual bool GetPhysicsPredictionEnabled() const
Definition ChaosSolversModule.h:39
virtual bool GetResimulationErrorPositionThresholdEnabled() const
Definition ChaosSolversModule.h:50
virtual bool GetResimulationErrorRotationThresholdEnabled() const
Definition ChaosSolversModule.h:60
virtual float GetResimulationErrorPositionThreshold() const
Definition ChaosSolversModule.h:55
virtual float GetMinDeltaVelocityForHitEvents() const
Definition ChaosSolversModule.h:34
virtual float GetResimulationErrorRotationThreshold() const
Definition ChaosSolversModule.h:65
virtual int32 GetPhysicsHistoryCount() const
Definition ChaosSolversModule.h:95
virtual bool GetResimulationErrorAngularVelocityThresholdEnabled() const
Definition ChaosSolversModule.h:80
virtual float GetResimulationErrorAngularVelocityThreshold() const
Definition ChaosSolversModule.h:85
virtual float GetPhysicsHistoryTimeLength() const
Definition ChaosSolversModule.h:90
virtual ~IChaosSettingsProvider()
Definition ChaosSolversModule.h:32
Definition ChaosSolversModule.h:23
virtual UClass * GetSolverActorClass() const =0
Definition UnrealString.h.inl:34
Definition SkeletalMeshComponent.h:307
FRealDouble FReal
Definition Real.h:22
FInternalDefaultSettings GDefaultChaosSettings
Definition ChaosSolversModule.cpp:46
Definition PhysicalMaterials.h:24
Definition PhysicalMaterials.h:63
Definition ChaosSolversModule.h:357
~FChaosScopeSolverLock()
Definition ChaosSolversModule.h:363
FChaosScopeSolverLock()
Definition ChaosSolversModule.h:358
Definition ChaosSolversModule.h:120
TArray< Chaos::FPhysicsProxy * > ActiveProxies
Definition ChaosSolversModule.h:124
TArray< Chaos::FPhysicsProxy * > ActiveProxies_GameThread
Definition ChaosSolversModule.h:125
Chaos::FPhysicsSolver * Solver
Definition ChaosSolversModule.h:123