5#include "Containers/Map.h"
9#define UE_API CLOTHINGSYSTEMRUNTIMEINTERFACE_API
12class USkeletalMeshComponent;
14class UE_DEPRECATED(5.7,
"Use IClothingSimulationInterface instead.") IClothingSimulation;
149 UE_DEPRECATED(5.7,
"This method is used to ease transition between the new and old interface and will be removed.")
183 bool bIsLegacyInterface =
false;
203 friend class USkeletalMeshComponent;
253 UE_DEPRECATED(5.7,
"This method has not been used consistently and has been replaced with ShouldSimulateLOD")
310 UE_DEPRECATED(5.7,
"GatherStats is unused and will be removed from future interfaces. Do not override.")
311 virtual void GatherStats()
const {}
313 UE_DEPRECATED(5.7,
"Use a clothing simulation interactor to set this simulation property instead.")
315 UE_DEPRECATED(5.7,
"Use a clothing simulation interactor to set this simulation property instead.")
316 virtual void SetMaxNumIterations(
int32 MaxNumIterations) {}
317 UE_DEPRECATED(5.7,
"Use a clothing simulation interactor to set this simulation property instead.")
321 virtual void UpdateWorldForces(const USkeletalMeshComponent* OwnerComponent) {}
#define UE_API
Definition ClothingSimulationInterface.h:9
#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
#define UE_API
Definition SColorGradingComponentViewer.h:12
Definition SkeletalMeshComponentPhysics.cpp:3396
Definition ClothingSimulationInterface.h:20
UE_API IClothingSimulationContext()
virtual UE_API ~IClothingSimulationContext()
Definition ClothingSimulationInterface.h:35
virtual int32 GetNumSubsteps() const
Definition ClothingSimulationInterface.h:173
virtual IClothingSimulationContext * CreateContext()=0
virtual void EndCreateActor()=0
PRAGMA_DISABLE_DEPRECATION_WARNINGS const IClothingSimulation * DynamicCastToIClothingSimulation() const
virtual void AddExternalCollisions(const FClothCollisionData &InData)=0
virtual int32 GetNumIterations() const
Definition ClothingSimulationInterface.h:167
virtual bool IsTeleported() const
Definition ClothingSimulationInterface.h:177
virtual void HardResetSimulation(const IClothingSimulationContext *InContext)=0
virtual UE_API ~IClothingSimulationInterface()
virtual void Initialize()=0
virtual PRAGMA_ENABLE_DEPRECATION_WARNINGS int32 GetNumCloths() const
Definition ClothingSimulationInterface.h:157
virtual bool ShouldSimulateLOD(int32 OwnerLODIndex) const =0
UE_API IClothingSimulationInterface()
virtual void Shutdown()=0
virtual void CreateActor(USkeletalMeshComponent *InOwnerComponent, const UClothingAssetBase *InAsset, int32 SimDataIndex)=0
virtual void ForceClothNextUpdateTeleportAndReset_AnyThread()=0
virtual void GetCollisions(FClothCollisionData &OutCollisions, bool bIncludeExternal=true) const =0
virtual void DestroyActors()=0
virtual void AppendSimulationData(TMap< int32, FClothSimulData > &InOutData, const USkeletalMeshComponent *OwnerComponent, const USkinnedMeshComponent *OverrideComponent) const =0
friend class IClothingSimulation
Definition ClothingSimulationInterface.h:181
virtual void DestroyContext(IClothingSimulationContext *InContext)=0
virtual void FillContextAndPrepareTick(const USkeletalMeshComponent *InComponent, float InDeltaTime, IClothingSimulationContext *InOutContext, bool bIsInitialization, bool bForceTeleportResetOnly)=0
virtual int32 GetNumKinematicParticles() const
Definition ClothingSimulationInterface.h:159
virtual void ClearExternalCollisions()=0
virtual FBoxSphereBounds GetBounds(const USkeletalMeshComponent *InOwnerComponent) const =0
virtual void Simulate_AnyThread(const IClothingSimulationContext *InContext)=0
virtual float GetSimulationTime() const
Definition ClothingSimulationInterface.h:175
virtual int32 GetNumDynamicParticles() const
Definition ClothingSimulationInterface.h:161
Definition UnrealString.h.inl:34
Definition ClothingAssetBase.h:21
Definition SkinnedMeshComponent.h:258
FSolverCollisionParticles class
Definition PBDSoftsEvolutionFwd.h:38
Definition ClothCollisionData.h:14
Definition ClothingSystemRuntimeTypes.h:15
Definition ClothingSimulationInstance.h:25
Definition EnvironmentalCollisions.h:9
Definition BoxSphereBounds.h:25