9#include "PhysicsInterfaceWrapperShared.h"
13#include "ChaosEngineInterface.generated.h"
208 template <
typename T,
int>
209 class TPBDRigidParticles;
211 class FPerParticleGravity;
216 template <
typename T,
int>
218 using FAABB3 = TAABB<FReal, 3>;
220 template <
typename T,
int>
223 template <
typename T,
int>
225 using FSphere = TSphere<FReal, 3>;
227 class FConstraintBase;
228 class FJointConstraint;
229 class FSuspensionConstraint;
231 class FTriangleMeshImplicitObject;
233 struct FSerializedDataBuffer;
297 FQuat GeometryRotation;
554 UE_DEPRECATED(5.4,
"Use SetGeometry with FImplicitObjectPtr instead.")
#define check(expr)
Definition AssertionMacros.h:314
EConstraintPlasticityType
Definition ChaosEngineInterface.h:173
@ CCPT_MAX
Definition ChaosEngineInterface.h:181
EAngularConstraintMotion
Definition ChaosEngineInterface.h:114
@ ACM_MAX
Definition ChaosEngineInterface.h:122
uint8 FMaskFilter
Definition ChaosEngineInterface.h:200
ESleepFamily
Definition ChaosEngineInterface.h:102
EPhysicalSurface
Definition ChaosEngineInterface.h:21
ELinearConstraintMotion
Definition ChaosEngineInterface.h:187
@ LCM_MAX
Definition ChaosEngineInterface.h:195
@ UMETA
Definition ChaosEngineInterface.h:22
ERadialImpulseFalloff
Definition ChaosEngineInterface.h:91
@ RIF_Constant
Definition ChaosEngineInterface.h:93
@ RIF_MAX
Definition ChaosEngineInterface.h:96
@ RIF_Linear
Definition ChaosEngineInterface.h:95
#define UE_INTERNAL
Definition CoreMiscDefines.h:345
#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 UENUM(...)
Definition ObjectMacros.h:749
ECollisionShapeType
Definition PhysicsInterfaceTypesCore.h:49
uint32 PointerHash(const void *Key)
Definition TypeHash.h:91
Definition PBDConstraintBaseData.h:36
Definition ImplicitObject.h:111
Definition PBDRigidsSolver.h:84
Definition ShapeInstance.h:36
Definition SingleParticlePhysicsProxy.h:1567
Definition SingleParticlePhysicsProxy.h:58
Definition TriangleMeshImplicitObject.h:490
Definition ChaosEngineInterface.h:347
static PHYSICSCORE_API void AddVelocity_AssumesLocked(const FPhysicsActorHandle &InActorReference, const FVector &InForce, bool bIsInternal=false)
Definition ChaosEngineInterface.cpp:1072
static PHYSICSCORE_API bool IsKinematic_AssumesLocked(const FPhysicsActorHandle &InActorReference)
Definition ChaosEngineInterface.cpp:430
static PHYSICSCORE_API FTransform GetTransform_AssumesLocked(const FPhysicsActorHandle &InRef, bool bForceGlobalPose=false)
Definition ChaosEngineInterface.cpp:589
static PHYSICSCORE_API void SetDriveOrientation(const FPhysicsConstraintHandle &InConstraintRef, const FQuat &InOrientation)
Definition ChaosEngineInterface.cpp:1865
static PHYSICSCORE_API Chaos::Filter::FCombinedShapeFilterData GetCombinedShapeFilterData(const FPhysicsShapeHandle &InShape)
Definition ChaosEngineInterface.cpp:2061
static PHYSICSCORE_API void AddActorToAggregate_AssumesLocked(const FPhysicsAggregateReference_Chaos &InAggregate, const FPhysicsActorHandle &InActor)
Definition ChaosEngineInterface.cpp:214
static PHYSICSCORE_API void SetIsProbeShape(const FPhysicsShapeHandle &InShape, bool bIsProbeShape)
Definition ChaosEngineInterface.cpp:1309
static PHYSICSCORE_API FPhysicsShapeHandle CloneShape(const FPhysicsShapeHandle &InShape)
Definition ChaosEngineInterface.cpp:1991
static PHYSICSCORE_API void AddForce_AssumesLocked(const FPhysicsActorHandle &InActorReference, const FVector &Force, bool bAllowSubstepping, bool bAccelChange, bool bIsInternal=false)
Definition ChaosEngineInterface.cpp:1149
static PHYSICSCORE_API FVector GetLinearVelocity_AssumesLocked(const FPhysicsActorHandle &InActorReference)
Definition ChaosEngineInterface.cpp:617
static PHYSICSCORE_API void SetPositionSolverIterationCount_AssumesLocked(const FPhysicsActorHandle &InActorReference, int32 PositionSolverIterationCount)
Definition ChaosEngineInterface.cpp:563
static PHYSICSCORE_API void SetLinearDamping_AssumesLocked(const FPhysicsActorHandle &InActorReference, float InDamping)
Definition ChaosEngineInterface.cpp:833
static PHYSICSCORE_API bool GetGyroscopicTorqueEnabled_AssumesLocked(const FPhysicsActorHandle &InActorReference)
Definition ChaosEngineInterface.cpp:1238
static PHYSICSCORE_API void SetCanVisualize(const FPhysicsConstraintHandle &InConstraintRef, bool bInCanVisualize)
Definition ChaosEngineInterface.cpp:1704
static PHYSICSCORE_API void SetCollisionEnabled(const FPhysicsConstraintHandle &InConstraintRef, bool bInCollisionEnabled)
Definition ChaosEngineInterface.cpp:1709
static PHYSICSCORE_API void SetLocalInertiaTensor_AssumesLocked(const FPhysicsActorHandle &InActorReference, const FVector &InInertiaTensor)
Definition ChaosEngineInterface.cpp:782
static PHYSICSCORE_API void SetGravityEnabled_AssumesLocked(const FPhysicsActorHandle &InActorReference, bool bEnabled)
Definition ChaosEngineInterface.cpp:1214
static PHYSICSCORE_API FTransform GetLocalTransform(const FPhysicsShapeHandle &InShape)
Definition ChaosEngineInterface.cpp:2119
static UE_INTERNAL PHYSICSCORE_API void SerializeParticleStateToBuffer(const FPhysicsActorHandle &InActorHandle, Chaos::FSerializedDataBuffer &OutSerializedData, Chaos::ESerializedDataContext DataContext)
Definition ChaosEngineInterface.cpp:2178
static PHYSICSCORE_API void SetIsKinematic_AssumesLocked(const FPhysicsActorHandle &InActorReference, bool bIsKinematic)
Definition ChaosEngineInterface.cpp:489
static PHYSICSCORE_API void SetSmoothEdgeCollisionsEnabled_AssumesLocked(const FPhysicsActorHandle &InActor, const bool bSmoothEdgeCollisionsEnabled)
Definition ChaosEngineInterface.cpp:329
static PHYSICSCORE_API void AddImpulse_AssumesLocked(const FPhysicsActorHandle &InActorReference, const FVector &InForce, bool bIsInternal=false)
Definition ChaosEngineInterface.cpp:1042
static PHYSICSCORE_API void SetSolverPositionIterationCount_AssumesLocked(const FPhysicsActorHandle &InHandle, int32 InSolverIterationCount)
Definition ChaosEngineInterface.cpp:1330
static PHYSICSCORE_API int32 GetAllShapes_AssumedLocked(const FPhysicsActorHandle &InActorHandle, TArray< FPhysicsShapeReference_Chaos, FDefaultAllocator > &OutShapes)
Definition ChaosEngineInterface.cpp:2409
static bool IsValid(const FPhysicsActorHandle &Handle)
Definition ChaosEngineInterface.h:354
static PHYSICSCORE_API FTransform GetLocalPose(const FPhysicsConstraintHandle &InConstraintRef, EConstraintFrame::Type InFrame)
Definition ChaosEngineInterface.cpp:1566
static PHYSICSCORE_API FBox GetBoundsLocal_AssumesLocked(const FPhysicsActorHandle &InActorReference)
Definition ChaosEngineInterface.cpp:817
static PHYSICSCORE_API void AddRadialImpulse_AssumesLocked(const FPhysicsActorHandle &InActorReference, const FVector &InOrigin, float InRadius, float InStrength, ERadialImpulseFalloff InFalloff, bool bInVelChange, bool bIsInternal=false)
Definition ChaosEngineInterface.cpp:1134
static PHYSICSCORE_API void SetMaxDepenetrationVelocity_AssumesLocked(const FPhysicsActorHandle &InActorReference, float InMaxDepenetrationVelocity)
Definition ChaosEngineInterface.cpp:715
static PHYSICSCORE_API void SetSolverProjectionIterationCount_AssumesLocked(const FPhysicsActorHandle &InHandle, int32 InSolverIterationCount)
Definition ChaosEngineInterface.cpp:1342
static PHYSICSCORE_API int32 GetNumShapes(const FPhysicsActorHandle &InHandle)
Definition ChaosEngineInterface.cpp:302
static PHYSICSCORE_API void AddAngularVelocityInRadians_AssumesLocked(const FPhysicsActorHandle &InActorReference, const FVector &InTorque, bool bIsInternal=false)
Definition ChaosEngineInterface.cpp:1087
static PHYSICSCORE_API void SetDisabled(const FPhysicsActorHandle &InPhysicsActor, bool bSetDisabled)
Definition ChaosEngineInterface.cpp:390
static PHYSICSCORE_API void SetMass_AssumesLocked(const FPhysicsActorHandle &InHandle, float InMass)
Definition ChaosEngineInterface.cpp:1265
static PHYSICSCORE_API FVector GetLocalInertiaTensor_AssumesLocked(const FPhysicsActorHandle &InActorReference)
Definition ChaosEngineInterface.cpp:773
static bool HasSyncSceneData(const FPhysicsActorHandle &InHandle)
Definition ChaosEngineInterface.h:400
static PHYSICSCORE_API bool IsDisabled(const FPhysicsActorHandle &InPhysicsActor)
Definition ChaosEngineInterface.cpp:395
static PHYSICSCORE_API void GetForce(const FPhysicsConstraintHandle &InConstraintRef, FVector &OutLinForce, FVector &OutAngForce)
Definition ChaosEngineInterface.cpp:1641
static PHYSICSCORE_API void SetUpdateKinematicFromSimulation_AssumesLocked(const FPhysicsActorHandle &InActorReference, bool bUpdateKinematicFromSimulation)
Definition ChaosEngineInterface.cpp:1233
static PHYSICSCORE_API void SetCombinedShapeFilterData(const FPhysicsShapeHandle &InShape, const Chaos::Filter::FCombinedShapeFilterData &InFilter)
Definition ChaosEngineInterface.cpp:2097
static PHYSICSCORE_API void SetLinearVelocity_AssumesLocked(const FPhysicsActorHandle &InActorReference, const FVector &InNewVelocity, bool bAutoWake=true)
Definition ChaosEngineInterface.cpp:627
static PHYSICSCORE_API void SetDriveAngularVelocity(const FPhysicsConstraintHandle &InConstraintRef, const FVector &InAngVelocity)
Definition ChaosEngineInterface.cpp:1887
static PHYSICSCORE_API float GetCurrentSwing2(const FPhysicsConstraintHandle &InConstraintRef)
Definition ChaosEngineInterface.cpp:1694
static UE_INTERNAL PHYSICSCORE_API void SerializeConstraintStateToBuffer(const FPhysicsConstraintHandle &ConstraintHandle, Chaos::FSerializedDataBuffer &OutSerializedData, Chaos::ESerializedDataContext DataContext)
Definition ChaosEngineInterface.cpp:2277
static PHYSICSCORE_API void SetUseLinearJointSolver_AssumesLocked(const FPhysicsConstraintHandle &InConstraintRef, bool bInUseLinearJointSolver)
Definition ChaosEngineInterface.cpp:1775
static PHYSICSCORE_API void SetSwingLimit(const FPhysicsConstraintHandle &InConstraintRef, float InYLimit, float InZLimit, float InContactDistance)
Definition ChaosEngineInterface.cpp:1912
static PHYSICSCORE_API void AddActorToSolver(const FPhysicsActorHandle &Handle, Chaos::FPhysicsSolver *Solver)
Definition ChaosEngineInterface.cpp:185
static PHYSICSCORE_API FTransform GetGlobalPose(const FPhysicsConstraintHandle &InConstraintRef, EConstraintFrame::Type InFrame)
Definition ChaosEngineInterface.cpp:1600
static PHYSICSCORE_API void SetCcdEnabled_AssumesLocked(const FPhysicsActorHandle &InActorReference, bool bIsCcdEnabled)
Definition ChaosEngineInterface.cpp:548
static PHYSICSCORE_API void SetInitialized_AssumesLocked(const FPhysicsActorHandle &InHandle, bool InInitialized)
Definition ChaosEngineInterface.cpp:1360
static PHYSICSCORE_API FVector GetAngularVelocity_AssumesLocked(const FPhysicsActorHandle &InActorReference)
Definition ChaosEngineInterface.cpp:642
static PHYSICSCORE_API void SetMaskFilter(const FPhysicsShapeHandle &InShape, FMaskFilter InFilter)
Definition ChaosEngineInterface.cpp:2008
static PHYSICSCORE_API bool IsKinematic(const FPhysicsActorHandle &InActorReference)
Definition ChaosEngineInterface.cpp:425
static PHYSICSCORE_API bool IsStatic(const FPhysicsActorHandle &InActorReference)
Definition ChaosEngineInterface.cpp:415
static PHYSICSCORE_API void AddForceAtPosition_AssumesLocked(const FPhysicsActorHandle &InActorReference, const FVector &Force, const FVector &Position, bool bAllowSubstepping, bool bIsLocalForce=false, bool bIsInternal=false)
Definition ChaosEngineInterface.cpp:1164
static PHYSICSCORE_API FPhysicsConstraintHandle CreateSuspension(Chaos::FPhysicsObject *Body, const FVector &InLocalFrame)
Definition ChaosEngineInterface.cpp:1483
static PHYSICSCORE_API FVector GetWorldVelocityAtPoint_AssumesLocked(const FPhysicsActorHandle &InActorReference, const FVector &InPoint)
Definition ChaosEngineInterface.cpp:723
static PHYSICSCORE_API void SetKinematicTarget_AssumesLocked(const FPhysicsActorHandle &InActorReference, const FTransform &InNewTarget)
Definition ChaosEngineInterface.cpp:2596
static PHYSICSCORE_API void AddVelocityChangeImpulseAtLocation_AssumesLocked(const FPhysicsActorHandle &InActorReference, const FVector &InVelocityDelta, const FVector &InLocation, bool bIsInternal=false)
Definition ChaosEngineInterface.cpp:1119
static PHYSICSCORE_API void CreateActor(const FActorCreationParams &InParams, FPhysicsActorHandle &Handle, UObject *InOwner=nullptr)
Definition ChaosEngineInterface.cpp:2419
static PHYSICSCORE_API float GetCurrentTwist(const FPhysicsConstraintHandle &InConstraintRef)
Definition ChaosEngineInterface.cpp:1699
static PHYSICSCORE_API FPhysicsMaterialHandle CreateMaterial(const UPhysicalMaterial *InMaterial)
Definition ChaosEngineInterface.cpp:231
static PHYSICSCORE_API void GetDriveAngularVelocity(const FPhysicsConstraintHandle &InConstraintRef, FVector &OutAngVelocity)
Definition ChaosEngineInterface.cpp:1669
static PHYSICSCORE_API void SetInertiaConditioningEnabled_AssumesLocked(const FPhysicsActorHandle &InActorReference, bool bEnabled)
Definition ChaosEngineInterface.cpp:1299
static PHYSICSCORE_API bool IsRigidBody(const FPhysicsActorHandle &InActorReference)
Definition ChaosEngineInterface.cpp:405
static PHYSICSCORE_API void AddAngularImpulseInRadians_AssumesLocked(const FPhysicsActorHandle &InActorReference, const FVector &InTorque, bool bIsInternal=false)
Definition ChaosEngineInterface.cpp:1057
static PHYSICSCORE_API void SetDriveLinearVelocity(const FPhysicsConstraintHandle &InConstraintRef, const FVector &InLinVelocity)
Definition ChaosEngineInterface.cpp:1876
static PHYSICSCORE_API void SetBreakForces_AssumesLocked(const FPhysicsConstraintHandle &InConstraintRef, float InLinearBreakForce, float InAngularBreakForce)
Definition ChaosEngineInterface.cpp:1786
static PHYSICSCORE_API FTransform GetGlobalPose_AssumesLocked(const FPhysicsActorHandle &InActorReference)
Definition ChaosEngineInterface.cpp:584
static PHYSICSCORE_API FChaosScene * GetCurrentScene(const FPhysicsActorHandle &InHandle)
Definition ChaosEngineInterface.cpp:2533
static PHYSICSCORE_API SIZE_T GetResourceSizeEx(const FPhysicsActorHandle &InActorRef)
Definition ChaosEngineInterface.cpp:1370
static PHYSICSCORE_API void SetGravityGroupIndex_AssumesLocked(const FPhysicsActorHandle &InActorReference, uint32 Index)
Definition ChaosEngineInterface.cpp:1224
static PHYSICSCORE_API float GetMass_AssumesLocked(const FPhysicsActorHandle &InActorReference)
Definition ChaosEngineInterface.cpp:452
static PHYSICSCORE_API void SetFilterInstanceData(const FPhysicsShapeHandle &InShape, const Chaos::Filter::FInstanceData &InFilter)
Definition ChaosEngineInterface.cpp:2092
static PHYSICSCORE_API void GetDriveLinearVelocity(const FPhysicsConstraintHandle &InConstraintRef, FVector &OutLinVelocity)
Definition ChaosEngineInterface.cpp:1656
static PHYSICSCORE_API void SetLocalPose(const FPhysicsConstraintHandle &InConstraintRef, const FTransform &InPose, EConstraintFrame::Type InFrame)
Definition ChaosEngineInterface.cpp:1834
static PHYSICSCORE_API bool IsInertiaConditioningEnabled_AssumesLocked(const FPhysicsActorHandle &InActorReference)
Definition ChaosEngineInterface.cpp:1295
static PHYSICSCORE_API void SetContactTransferScale_AssumesLocked(const FPhysicsConstraintHandle &InConstraintRef, float InContactTransferScale)
Definition ChaosEngineInterface.cpp:1823
static PHYSICSCORE_API void SetTwistLimit(const FPhysicsConstraintHandle &InConstraintRef, float InLowerLimit, float InUpperLimit, float InContactDistance)
Definition ChaosEngineInterface.cpp:1898
static PHYSICSCORE_API FTransform GetComTransformLocal_AssumesLocked(const FPhysicsActorHandle &InActorReference)
Definition ChaosEngineInterface.cpp:755
static PHYSICSCORE_API void SetWakeCounter_AssumesLocked(const FPhysicsActorHandle &InHandle, float InWakeCounter)
Definition ChaosEngineInterface.cpp:1355
static PHYSICSCORE_API Chaos::Filter::FInstanceData GetFilterInstanceData(const FPhysicsShapeHandle &InShape)
Definition ChaosEngineInterface.cpp:2049
static PHYSICSCORE_API void ReleaseMaterial(FPhysicsMaterialHandle &InHandle)
Definition ChaosEngineInterface.cpp:263
static PHYSICSCORE_API void SetConstraintUserData(const FPhysicsConstraintHandle &InConstraintRef, void *InUserData)
Definition ChaosEngineInterface.cpp:1511
static PHYSICSCORE_API void SetLocalTransform(const FPhysicsShapeHandle &InShape, const FTransform &NewLocalTransform)
Definition ChaosEngineInterface.cpp:2131
static PHYSICSCORE_API void SetGlobalPose_AssumesLocked(const FPhysicsActorHandle &InActorReference, const FTransform &InNewPose, bool bAutoWake=true)
Definition ChaosEngineInterface.cpp:2544
static PHYSICSCORE_API bool IsDynamic(const FPhysicsActorHandle &InActorReference)
Definition ChaosEngineInterface.cpp:410
static PHYSICSCORE_API void * GetUserData(const FPhysicsShapeHandle &InShape)
Definition ChaosEngineInterface.cpp:293
static PHYSICSCORE_API Chaos::Filter::FShapeFilterData GetShapeFilterData(const FPhysicsShapeHandle &InShape)
Definition ChaosEngineInterface.cpp:2037
static PHYSICSCORE_API void UpdateMaterial(FPhysicsMaterialHandle &InHandle, UPhysicalMaterial *InMaterial)
Definition ChaosEngineInterface.cpp:238
static PHYSICSCORE_API FPhysicsGeometryCollection_Chaos GetGeometryCollection(const FPhysicsShapeHandle &InShape)
Definition ChaosEngineInterface.cpp:1997
static PHYSICSCORE_API float GetMaxDepenetrationVelocity_AssumesLocked(const FPhysicsActorHandle &InActorReference)
Definition ChaosEngineInterface.cpp:705
static PHYSICSCORE_API float GetMaxLinearVelocity_AssumesLocked(const FPhysicsActorHandle &InActorReference)
Definition ChaosEngineInterface.cpp:673
static PHYSICSCORE_API void SetComTransformLocal_AssumesLocked(const FPhysicsActorHandle &InActorReference, const FTransform &InTransform)
Definition ChaosEngineInterface.cpp:764
static PHYSICSCORE_API void SetIsQueryShape(const FPhysicsShapeHandle &InShape, bool bIsQueryShape)
Definition ChaosEngineInterface.cpp:1314
static PHYSICSCORE_API void SetViolationCallbackThresholds_AssumesLocked(const FPhysicsConstraintHandle &InConstraintRef, float InLinearBreakViolation, float InAngularBreakViolation)
Definition ChaosEngineInterface.cpp:1798
static PHYSICSCORE_API void SetComLocalPose_AssumesLocked(const FPhysicsActorHandle &InHandle, const FTransform &InComLocalPose)
Definition ChaosEngineInterface.cpp:1288
static bool HasAsyncSceneData(const FPhysicsActorHandle &InHandle)
Definition ChaosEngineInterface.h:401
static PHYSICSCORE_API void SetMaxAngularVelocity_AssumesLocked(const FPhysicsActorHandle &InActorReference, float InMaxAngularVelocityRadians)
Definition ChaosEngineInterface.cpp:683
static PHYSICSCORE_API bool CanSimulate_AssumesLocked(const FPhysicsActorHandle &InActorReference)
Definition ChaosEngineInterface.cpp:446
static PHYSICSCORE_API void SetOneWayInteraction_AssumesLocked(const FPhysicsActorHandle &InHandle, bool InOneWayInteraction)
Definition ChaosEngineInterface.cpp:1247
static PHYSICSCORE_API void SetActorUserData_AssumesLocked(const FPhysicsActorHandle &InActorReference, FPhysicsUserData *InUserData)
Definition ChaosEngineInterface.cpp:400
static PHYSICSCORE_API void AddImpulseAtLocation_AssumesLocked(const FPhysicsActorHandle &InActorReference, const FVector &InImpulse, const FVector &InLocation, bool bIsInternal=false)
Definition ChaosEngineInterface.cpp:1102
static PHYSICSCORE_API void AddRadialForce_AssumesLocked(const FPhysicsActorHandle &InActorReference, const FVector &Origin, const float Radius, const float Strength, const uint8 Falloff, bool bAccelChange, bool bAllowSubstepping, bool bIsInternal=false)
Definition ChaosEngineInterface.cpp:1180
static PHYSICSCORE_API void ReleaseAggregate(FPhysicsAggregateReference_Chaos &InAggregate)
Definition ChaosEngineInterface.cpp:212
static PHYSICSCORE_API void SetGyroscopicTorqueEnabled_AssumesLocked(const FPhysicsActorHandle &InActorReference, bool bGyroscopicTorqueEnabled)
Definition ChaosEngineInterface.cpp:1242
static PHYSICSCORE_API void ReleaseActor(FPhysicsActorHandle &InActorReference, FChaosScene *InScene=nullptr, bool bNeverDeferRelease=false)
Definition ChaosEngineInterface.cpp:2509
static PHYSICSCORE_API void SetMaxLinearVelocity_AssumesLocked(const FPhysicsActorHandle &InActorReference, float InMaxLinearVelocity)
Definition ChaosEngineInterface.cpp:694
static PHYSICSCORE_API float GetSleepEnergyThreshold_AssumesLocked(const FPhysicsActorHandle &InActorReference)
Definition ChaosEngineInterface.cpp:1252
static PHYSICSCORE_API void SetMassConditioningEnabled_AssumesLocked(const FPhysicsConstraintHandle &InConstraintRef, bool bInMassConditioningEnabled)
Definition ChaosEngineInterface.cpp:1764
static PHYSICSCORE_API FVector GetLocation(const FPhysicsConstraintHandle &InConstraintRef)
Definition ChaosEngineInterface.cpp:1628
static UE_INTERNAL PHYSICSCORE_API void ApplySerializedStateToConstraint(const FPhysicsConstraintHandle &ConstraintHandle, Chaos::FSerializedDataBufferPtr &&InSerializedData, Chaos::ESerializedDataContext DataContext)
Definition ChaosEngineInterface.cpp:2339
static PHYSICSCORE_API void SetProjectionSolverIterationCount_AssumesLocked(const FPhysicsActorHandle &InActorReference, int32 ProjectionSolverIterationCount)
Definition ChaosEngineInterface.cpp:573
static PHYSICSCORE_API void SetAngularVelocity_AssumesLocked(const FPhysicsActorHandle &InActorReference, const FVector &InNewVelocity, bool bAutoWake=true)
Definition ChaosEngineInterface.cpp:652
static PHYSICSCORE_API void SetParentDominates_AssumesLocked(const FPhysicsConstraintHandle &InConstraintRef, bool bInParentDominates)
Definition ChaosEngineInterface.cpp:1747
static PHYSICSCORE_API float GetMaxAngularVelocity_AssumesLocked(const FPhysicsActorHandle &InActorReference)
Definition ChaosEngineInterface.cpp:663
static PHYSICSCORE_API void SetMACDEnabled_AssumesLocked(const FPhysicsActorHandle &InActorReference, bool bIsMACDEnabled)
Definition ChaosEngineInterface.cpp:553
static PHYSICSCORE_API void SetPartialIslandSleepAllowed_AssumesLocked(const FPhysicsActorHandle &InActorReference, bool bIsPartialIslandSleepAllowed)
Definition ChaosEngineInterface.cpp:558
static PHYSICSCORE_API void SetIsSimulationShape(const FPhysicsShapeHandle &InShape, bool bIsSimShape)
Definition ChaosEngineInterface.cpp:1304
static PHYSICSCORE_API void SetProjectionEnabled_AssumesLocked(const FPhysicsConstraintHandle &InConstraintRef, bool bInProjectionEnabled, float InLinearAlpha=1.0f, float InAngularAlpha=0.0f, float InLinearTolerance=0.0f, float InAngularToleranceDeg=0.0f)
Definition ChaosEngineInterface.cpp:1720
static PHYSICSCORE_API float GetCurrentSwing1(const FPhysicsConstraintHandle &InConstraintRef)
Definition ChaosEngineInterface.cpp:1689
static PHYSICSCORE_API void AttachShape(const FPhysicsActorHandle &InActor, const FPhysicsShapeHandle &InNewShape)
Definition ChaosEngineInterface.cpp:315
static PHYSICSCORE_API FTransform GetComTransform_AssumesLocked(const FPhysicsActorHandle &InActorReference)
Definition ChaosEngineInterface.cpp:746
static PHYSICSCORE_API void AddDisabledCollisionsFor_AssumesLocked(const TMap< FPhysicsActorHandle, TArray< FPhysicsActorHandle > > &InMap)
Definition ChaosEngineInterface.cpp:334
static PHYSICSCORE_API void RemoveDisabledCollisionsFor_AssumesLocked(TArray< FPhysicsActorHandle > &InPhysicsActors)
Definition ChaosEngineInterface.cpp:372
static PHYSICSCORE_API void SetIgnoreAnalyticCollisions_AssumesLocked(const FPhysicsActorHandle &InActorReference, bool bIsCcdEnabled)
Definition ChaosEngineInterface.cpp:579
static PHYSICSCORE_API FPhysicsConstraintHandle CreateConstraint(Chaos::FPhysicsObject *Body1, Chaos::FPhysicsObject *Body2, const FTransform &InLocalFrame1, const FTransform &InLocalFrame2)
Definition ChaosEngineInterface.cpp:1376
static PHYSICSCORE_API bool GetUpdateKinematicFromSimulation_AssumesLocked(const FPhysicsActorHandle &InActorReference)
Definition ChaosEngineInterface.cpp:1229
const FCollisionFilterData & InFilter
Definition ChaosEngineInterface.h:577
static PHYSICSCORE_API ECollisionShapeType GetShapeType(const FPhysicsShapeHandle &InShape)
Definition ChaosEngineInterface.cpp:2114
static PHYSICSCORE_API void SetGeometry(FPhysicsShapeHandle &InShape, Chaos::FImplicitObjectPtr &&InGeometry)
Definition ChaosEngineInterface.cpp:1951
static PHYSICSCORE_API void SetDrivePosition(const FPhysicsConstraintHandle &InConstraintRef, const FVector &InPosition)
Definition ChaosEngineInterface.cpp:1854
static PHYSICSCORE_API void SetSleepThresholdMultiplier_AssumesLocked(const FPhysicsActorHandle &InActorReference, float ThresholdMultiplier)
Definition ChaosEngineInterface.cpp:1260
static PHYSICSCORE_API void SetUserData(FPhysicsMaterialHandle &InHandle, void *InUserData)
Definition ChaosEngineInterface.cpp:277
static PHYSICSCORE_API bool IsSimulationShape(const FPhysicsShapeHandle &InShape)
Definition ChaosEngineInterface.cpp:2102
static PHYSICSCORE_API void SetSendsSleepNotifies_AssumesLocked(const FPhysicsActorHandle &InActorReference, bool bSendSleepNotifies)
Definition ChaosEngineInterface.cpp:457
static PHYSICSCORE_API FBox GetBounds_AssumesLocked(const FPhysicsActorHandle &InActorReference)
Definition ChaosEngineInterface.cpp:790
static PHYSICSCORE_API void SetLinearLimit(const FPhysicsConstraintHandle &InConstraintRef, float InLimit)
Definition ChaosEngineInterface.cpp:1927
static PHYSICSCORE_API void WakeUp_AssumesLocked(const FPhysicsActorHandle &InActorReference)
Definition ChaosEngineInterface.cpp:476
static PHYSICSCORE_API bool IsCcdEnabled(const FPhysicsActorHandle &InActorReference)
Definition ChaosEngineInterface.cpp:440
static PHYSICSCORE_API void AddTorque_AssumesLocked(const FPhysicsActorHandle &InActorReference, const FVector &Torque, bool bAllowSubstepping, bool bAccelChange, bool bIsInternal=false)
Definition ChaosEngineInterface.cpp:1195
UE_DEPRECATED(5.7, "Use GetCombinedShapeFilterData instead") static PHYSICSCORE_API FCollisionFilterData GetSimulationFilter(const FPhysicsShapeHandle &InShape)
static PHYSICSCORE_API void SetStabilizationEnergyThreshold_AssumesLocked(const FPhysicsActorHandle &InHandle, float InThreshold)
Definition ChaosEngineInterface.cpp:1325
static PHYSICSCORE_API int32 GetNumActorsInAggregate(const FPhysicsAggregateReference_Chaos &InAggregate)
Definition ChaosEngineInterface.cpp:213
static PHYSICSCORE_API void DetachShape(const FPhysicsActorHandle &InActor, FPhysicsShapeHandle &InShape, bool bWakeTouching=true)
Definition ChaosEngineInterface.cpp:321
static PHYSICSCORE_API float GetWakeCounter_AssumesLocked(const FPhysicsActorHandle &InHandle)
Definition ChaosEngineInterface.cpp:1349
virtual ~FChaosEngineInterface()=default
static PHYSICSCORE_API float GetStabilizationEnergyThreshold_AssumesLocked(const FPhysicsActorHandle &InHandle)
Definition ChaosEngineInterface.cpp:1319
static PHYSICSCORE_API void PutToSleep_AssumesLocked(const FPhysicsActorHandle &InActorReference)
Definition ChaosEngineInterface.cpp:463
static PHYSICSCORE_API FPhysicsAggregateReference_Chaos CreateAggregate(int32 MaxBodies)
Definition ChaosEngineInterface.cpp:205
static PHYSICSCORE_API void ReleaseMaterialMask(FPhysicsMaterialMaskHandle &InHandle)
Definition ChaosEngineInterface.cpp:287
static PHYSICSCORE_API void SetShockPropagationEnabled_AssumesLocked(const FPhysicsConstraintHandle &InConstraintRef, bool bInShockPropagationEnabled, float InShockPropagationAlpha)
Definition ChaosEngineInterface.cpp:1735
static UE_INTERNAL PHYSICSCORE_API void ApplySerializedStateToParticle(const FPhysicsActorHandle &InActorHandle, TUniquePtr< Chaos::FSerializedDataBuffer > &&InSerializedData, Chaos::ESerializedDataContext DataContext)
Definition ChaosEngineInterface.cpp:2230
static PHYSICSCORE_API FTransform GetKinematicTarget_AssumesLocked(const FPhysicsActorHandle &InActorReference)
Definition ChaosEngineInterface.cpp:610
static PHYSICSCORE_API void SetShapeFilterData(const FPhysicsShapeHandle &InShape, const Chaos::Filter::FShapeFilterData &InFilter)
Definition ChaosEngineInterface.cpp:2087
static PHYSICSCORE_API bool IsGravityEnabled_AssumesLocked(const FPhysicsActorHandle &InActorReference)
Definition ChaosEngineInterface.cpp:1210
static PHYSICSCORE_API void SetPlasticityLimits_AssumesLocked(const FPhysicsConstraintHandle &InConstraintRef, float InLinearPlasticityLimit, float InAngularPlasticityLimit, EConstraintPlasticityType InLinearPlasticityType)
Definition ChaosEngineInterface.cpp:1810
static PHYSICSCORE_API void SetVelocitySolverIterationCount_AssumesLocked(const FPhysicsActorHandle &InActorReference, int32 VelocitySolverIterationCount)
Definition ChaosEngineInterface.cpp:568
static PHYSICSCORE_API void ReleaseShape(const FPhysicsShapeHandle &InShape)
Definition ChaosEngineInterface.cpp:308
static PHYSICSCORE_API int32 GetGravityGroupIndex_AssumesLocked(const FPhysicsActorHandle &InActorReference)
Definition ChaosEngineInterface.cpp:1219
static PHYSICSCORE_API void SetSleepEnergyThreshold_AssumesLocked(const FPhysicsActorHandle &InActorReference, float InEnergyThreshold)
Definition ChaosEngineInterface.cpp:1256
static PHYSICSCORE_API void SetAngularDamping_AssumesLocked(const FPhysicsActorHandle &InActorReference, float InDamping)
Definition ChaosEngineInterface.cpp:841
static PHYSICSCORE_API bool IsQueryShape(const FPhysicsShapeHandle &InShape)
Definition ChaosEngineInterface.cpp:2107
static PHYSICSCORE_API bool HasKinematicTarget_AssumesLocked(const FPhysicsActorHandle &InActorReference)
Definition ChaosEngineInterface.cpp:605
static PHYSICSCORE_API bool IsInScene(const FPhysicsActorHandle &InActorReference)
static PHYSICSCORE_API void SetSolverVelocityIterationCount_AssumesLocked(const FPhysicsActorHandle &InHandle, int32 InSolverIterationCount)
Definition ChaosEngineInterface.cpp:1336
static PHYSICSCORE_API void RemoveActorFromSolver(const FPhysicsActorHandle &Handle, Chaos::FPhysicsSolver *Solver)
Definition ChaosEngineInterface.cpp:191
static PHYSICSCORE_API void SetMassSpaceInertiaTensor_AssumesLocked(const FPhysicsActorHandle &InHandle, const FVector &InTensor)
Definition ChaosEngineInterface.cpp:1278
static PHYSICSCORE_API void ReleaseConstraint(FPhysicsConstraintHandle &InConstraintRef)
Definition ChaosEngineInterface.cpp:1522
Definition ChaosScene.h:88
Definition UnrealType.h:3087
Definition ChaosEngineInterface.h:241
bool IsValid() const
Definition ChaosEngineInterface.h:243
Definition ChaosEngineInterface.h:247
const Chaos::FConstraintBase * operator->() const
Definition ChaosEngineInterface.h:257
PHYSICSCORE_API bool IsValid() const
Definition ChaosEngineInterface.cpp:54
void Reset()
Definition ChaosEngineInterface.h:250
Chaos::FConstraintBase * Constraint
Definition ChaosEngineInterface.h:259
Chaos::FConstraintBase * operator->()
Definition ChaosEngineInterface.h:256
FPhysicsConstraintReference_Chaos()
Definition ChaosEngineInterface.h:249
Definition ChaosEngineInterface.h:286
PHYSICSCORE_API ~FPhysicsShapeAdapter_Chaos()
PHYSICSCORE_API const FPhysicsGeometry & GetGeometry() const
Definition ChaosEngineInterface.cpp:170
PHYSICSCORE_API const FQuat & GetGeomOrientation() const
Definition ChaosEngineInterface.cpp:180
PHYSICSCORE_API FTransform GetGeomPose(const FVector &Pos) const
Definition ChaosEngineInterface.cpp:175
Definition ChaosEngineInterface.h:263
bool operator==(const FPhysicsShapeReference_Chaos &Other) const
Definition ChaosEngineInterface.h:273
FPhysicsActorHandle ActorRef
Definition ChaosEngineInterface.h:277
bool IsValid() const
Definition ChaosEngineInterface.h:271
FPhysicsShapeReference_Chaos()
Definition ChaosEngineInterface.h:266
Chaos::FPerShapeData * Shape
Definition ChaosEngineInterface.h:276
friend uint32 GetTypeHash(const FPhysicsShapeReference_Chaos &InShapeReference)
Definition ChaosEngineInterface.h:279
PHYSICSCORE_API const Chaos::FImplicitObject & GetGeometry() const
Definition ChaosEngineInterface.cpp:58
FPhysicsShapeReference_Chaos(Chaos::FPerShapeData *ShapeIn, const FPhysicsActorHandle &ActorRefIn)
Definition ChaosEngineInterface.h:268
bool Equals(const FPhysicsShapeReference_Chaos &Other) const
Definition ChaosEngineInterface.h:272
Definition PhysicsUserData_Chaos.h:14
Definition UnrealString.h.inl:34
Definition RefCounting.h:454
Definition UniquePtr.h:107
Definition LineBatchComponent.h:128
Definition PhysicalMaterial.h:104
Definition SkeletalMeshComponent.h:307
TUniquePtr< FSerializedDataBuffer > FSerializedDataBufferPtr
Definition SolverSerializer.h:23
ESerializedDataContext
Definition SolverSerializer.h:27
TAABB< FReal, 3 > FAABB3
Definition ImplicitObject.h:34
Definition ChaosEngineInterface.h:128
Type
Definition ChaosEngineInterface.h:130
@ Frame2
Definition ChaosEngineInterface.h:132
@ Frame1
Definition ChaosEngineInterface.h:131
Definition ChaosEngineInterface.h:138
TArray< FPhysicsShapeHandle, TInlineAllocator< NumInlinedPxShapeElements > > FInlineShapeArray
Definition ChaosEngineInterface.h:166
ELimitAxis
Definition ChaosEngineInterface.h:140
@ NumInlinedPxShapeElements
Definition ChaosEngineInterface.h:163
EDriveType
Definition ChaosEngineInterface.h:150
Definition ShapeComponent.h:16
U16 Index
Definition radfft.cpp:71
Definition PhysicalMaterials.h:24
Definition PhysicalMaterials.h:63
Definition PhysicsObjectInternal.h:16
Definition PhysicsInterfaceTypesCore.h:14
Definition CollisionFilterData.h:46
Definition CollisionShape.h:21
Definition HairStrandsVoxelization.cpp:1078
Definition ChaosEngineInterface.h:304
PHYSICSCORE_API ECollisionShapeType GetType() const
Definition ChaosEngineInterface.cpp:66
PHYSICSCORE_API const Chaos::FImplicitObject & GetGeometry() const
Definition ChaosEngineInterface.cpp:71
PHYSICSCORE_API const Chaos::FSphere & GetSphereGeometry() const
Definition ChaosEngineInterface.cpp:93
PHYSICSCORE_API const Chaos::FCapsule & GetCapsuleGeometry() const
Definition ChaosEngineInterface.cpp:97
FPhysicsGeometryCollection_Chaos(const FPhysicsGeometryCollection_Chaos &Copy)=delete
PHYSICSCORE_API ~FPhysicsGeometryCollection_Chaos()
FPhysicsGeometryCollection_Chaos & operator=(const FPhysicsGeometryCollection_Chaos &Copy)=delete
PHYSICSCORE_API const Chaos::TBox< Chaos::FReal, 3 > & GetBoxGeometry() const
Definition ChaosEngineInterface.cpp:88
PHYSICSCORE_API const Chaos::FConvex & GetConvexGeometry() const
Definition ChaosEngineInterface.cpp:102
PHYSICSCORE_API const Chaos::FTriangleMeshImplicitObject & GetTriMeshGeometry() const
Definition ChaosEngineInterface.cpp:107
FPhysicsGeometryCollection_Chaos()=delete
PHYSICSCORE_API FPhysicsGeometryCollection_Chaos(FPhysicsGeometryCollection_Chaos &&Steal)
FPhysicsGeometryCollection_Chaos & operator=(FPhysicsGeometryCollection_Chaos &&Steal)=delete