8 class FPBDConstraintContainer;
11 #define CSV_CUSTOM_STAT_ISLANDGROUP_HELPER(Stat) CSV_CUSTOM_STAT(PhysicsVerbose, Stat, Stats[Stat] * 1000.0, ECsvCustomStatOp::Set);
12 #define CSV_SCOPED_ISLANDGROUP_TIMING_STAT(Stat, ThreadIndex) FScopedDurationTimer Timer_##Stat(GetThreadStatAccumulator(ThreadIndex, FIslandGroupStats::Stat))
42 for (
double&
Stat : Stats) {
Stat = 0.0; }
59 double Stats[EPerIslandStat::NumStats];
64 #define CSV_SCOPED_ISLANDGROUP_TIMING_STAT(Stat, ThreadIndex)
140 struct FIslandGroupRange
150 friend bool operator<(
const FIslandGroupRange& L,
const FIslandGroupRange&
R)
152 return (L.EndIndex - L.BeginIndex) > (
R.EndIndex -
R.BeginIndex);
157 FPBDIslandConstraintGroupSolver* IslandGroup;
168 FPBDIslandManager& IslandManager;
170 int32 NumActiveGroups;
171 int32 NumWorkerThreads;
172 int32 TargetNumBodiesPerTask;
173 int32 TargetNumConstraintsPerTask;
176 #if CSV_PROFILER_STATS
192 using FPBDIslandGroupManager
UE_DEPRECATED(5.2,
"Internal class moved to Private namespace") = Private::FPBDIslandGroupManager;
#define UE_NONCOPYABLE(TypeName)
Definition CoreMiscDefines.h:457
#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
bool operator<(const FTextFormatString &LHS, const FTextFormatString &RHS)
Definition ITextFormatArgumentModifier.h:147
Definition PBDConstraintContainer.h:19
Definition IslandGroup.h:19
Definition IslandGroupManager.h:77
CHAOS_API void Solve(const FReal Dt)
Definition IslandGroupManager.cpp:548
const FIterationSettings & GetIterationSettings() const
Definition IslandGroupManager.h:130
CHAOS_API void AddConstraintContainer(FPBDConstraintContainer &ConstraintContainer, const int32 Priority=0)
Definition IslandGroupManager.cpp:85
void SetNumPositionIterations(const int32 InNumIterations)
Definition IslandGroupManager.h:120
void SetNumProjectionIterations(const int32 InNumIterations)
Definition IslandGroupManager.h:122
int32 GetNumActiveGroups() const
Definition IslandGroupManager.h:103
FIterationSettings GetIslandGroupIterations(const int32 GroupIndex) const
Definition IslandGroupManager.h:124
void SetNumVelocityIterations(const int32 InNumIterations)
Definition IslandGroupManager.h:121
CHAOS_API void RemoveConstraintContainer(FPBDConstraintContainer &ConstraintContainer)
Definition IslandGroupManager.cpp:95
CHAOS_API int32 BuildGroups(const bool bIsResimming)
Definition IslandGroupManager.cpp:112
CHAOS_API ~FPBDIslandGroupManager()
Definition IslandGroupManager.cpp:80
FPBDIslandConstraintGroupSolver * GetGroup(const int32 GroupIndex)
Definition IslandGroupManager.h:108
CHAOS_API void SetIterationSettings(const FIterationSettings &InIterations)
Definition IslandGroupManager.cpp:543
CHAOS_API void SetConstraintContainerPriority(const int32 ContainerId, const int32 Priority)
Definition IslandGroupManager.cpp:104
Definition IslandManager.h:453
Definition IterationSettings.h:19
void SetNumPositionIterations(const int32 InNum)
Definition IterationSettings.h:64
void SetNumVelocityIterations(const int32 InNum)
Definition IterationSettings.h:65
void SetNumProjectionIterations(const int32 InNum)
Definition IterationSettings.h:66
FIterationSettings8 FIterationSettings
Definition IterationSettings.h:83
Definition SkeletalMeshComponent.h:307
FRealDouble FReal
Definition Real.h:22
TArray< T > Flatten(const TMap< T, uint32, FDefaultSetAllocator, KeyFuncs > &Index)
Definition AssetDataTagMap.cpp:830
Definition OverriddenPropertySet.cpp:45