|
| | FPBDCollisionSpringConstraints (const int32 InOffset, const int32 InNumParticles, const FTriangleMesh &InTriangleMesh, const TArray< FSolverVec3 > *InRestPositions, const TMap< FString, TConstArrayView< FRealSingle > > &WeightMaps, const TMap< FString, TConstArrayView< int32 > > &FaceIntMaps, const FCollectionPropertyConstFacade &PropertyCollection) |
| |
| | FPBDCollisionSpringConstraints (const int32 InOffset, const int32 InNumParticles, const FTriangleMesh &InTriangleMesh, const TArray< FSolverVec3 > *InRestPositions, TSet< TVec2< int32 > > &&InDisabledCollisionElements, const FCollectionPropertyConstFacade &PropertyCollection) |
| |
| | FPBDCollisionSpringConstraints (const int32 InOffset, const int32 InNumParticles, const FTriangleMesh &InTriangleMesh, const TArray< FSolverVec3 > *InRestPositions, TSet< TVec2< int32 > > &&InDisabledCollisionElements, const FSolverReal InThickness=Base::BackCompatThickness, const FSolverReal InStiffness=Base::BackCompatStiffness, const FSolverReal InFrictionCoefficient=Base::BackCompatFrictionCoefficient) |
| |
| virtual | ~FPBDCollisionSpringConstraints () override |
| |
| void | SetProperties (const FCollectionPropertyConstFacade &PropertyCollection, const TMap< FString, TConstArrayView< FRealSingle > > &WeightMaps, const TMap< FString, TConstArrayView< int32 > > &FaceIntMaps) |
| |
| void | SetProperties (const FCollectionPropertyConstFacade &PropertyCollection) |
| |
| | UE_CHAOS_DECLARE_INDEXLESS_PROPERTYCOLLECTION_NAME (UseSelfCollisions, bool) |
| |
| | UE_CHAOS_DECLARE_INDEXLESS_PROPERTYCOLLECTION_NAME (SelfCollisionThickness, float) |
| |
| | UE_CHAOS_DECLARE_INDEXLESS_PROPERTYCOLLECTION_NAME (SelfCollisionStiffness, float) |
| |
| | UE_CHAOS_DECLARE_INDEXLESS_PROPERTYCOLLECTION_NAME (SelfCollisionFriction, float) |
| |
| | UE_CHAOS_DECLARE_INDEXLESS_PROPERTYCOLLECTION_NAME (SelfCollisionLayers, float) |
| |
| template<typename SpatialAccelerator , typename SolverParticlesOrRange > |
| CHAOS_API void | Init (const SolverParticlesOrRange &Particles, const SpatialAccelerator &Spatial, const TConstArrayView< FPBDTriangleMeshCollisions::FGIAColor > &VertexGIAColors, const TArray< FPBDTriangleMeshCollisions::FGIAColor > &TriangleGIAColors) |
| |
| template<typename SpatialAccelerator , typename SolverParticlesOrRange > |
| CHAOS_API void | Init (const SolverParticlesOrRange &Particles, const FSolverReal Dt, const FPBDTriangleMeshCollisions::FTriangleSubMesh &CollidableSubMesh, const SpatialAccelerator &DynamicSpatial, const SpatialAccelerator &KinematicColliderSpatial, const TConstArrayView< FPBDTriangleMeshCollisions::FGIAColor > &VertexGIAColors, const TArray< FPBDTriangleMeshCollisions::FGIAColor > &TriangleGIAColors) |
| |
| template<typename SpatialAccelerator , typename SolverParticlesOrRange > |
| void | Init (const SolverParticlesOrRange &Particles, const SpatialAccelerator &Spatial, const TConstArrayView< FPBDTriangleMeshCollisions::FGIAColor > &VertexGIAColors, const TArray< FPBDTriangleMeshCollisions::FGIAColor > &TriangleGIAColors) |
| |
| template<typename SpatialAccelerator , typename SolverParticlesOrRange > |
| void | Init (const SolverParticlesOrRange &Particles, const FSolverReal Dt, const FPBDTriangleMeshCollisions::FTriangleSubMesh &CollidableSubMesh, const SpatialAccelerator &DynamicSpatial, const SpatialAccelerator &KinematicColliderSpatial, const TConstArrayView< FPBDTriangleMeshCollisions::FGIAColor > &VertexGIAColors, const TArray< FPBDTriangleMeshCollisions::FGIAColor > &TriangleGIAColors) |
| |
| CHAOS_API | FPBDCollisionSpringConstraintsBase (const int32 InOffset, const int32 InNumParticles, const FTriangleMesh &InTriangleMesh, const TArray< FSolverVec3 > *InReferencePositions, TSet< TVec2< int32 > > &&InDisabledCollisionElements, const TConstArrayView< FRealSingle > &InThicknessMultipliers, const TConstArrayView< FRealSingle > &InKinematicColliderFrictionMultipliers, const TConstArrayView< int32 > &InSelfCollisionLayers, const FSolverVec2 InThickness=FSolverVec2(BackCompatThickness), const FSolverReal InStiffness=BackCompatStiffness, const FSolverReal InFrictionCoefficient=BackCompatFrictionCoefficient, const bool bInOnlyCollideKinematics=false, const FSolverReal InKinematicColliderThickness=DefaultKinematicColliderThickness, const FSolverReal InKinematicColliderStiffness=DefaultKinematicColliderStiffness, const FSolverVec2 InKinematicColliderFrictionCoefficient=FSolverVec2(DefaultKinematicColliderFrictionCoefficient), const FSolverReal InProximityStiffness=DefaultProximityStiffness) |
| |
| virtual | ~FPBDCollisionSpringConstraintsBase () |
| |
| void | ResetKinematicCollider () |
| |
| template<typename SpatialAccelerator , typename SolverParticlesOrRange > |
| CHAOS_API void | Init (const SolverParticlesOrRange &Particles, const SpatialAccelerator &Spatial, const TConstArrayView< FPBDTriangleMeshCollisions::FGIAColor > &VertexGIAColors, const TArray< FPBDTriangleMeshCollisions::FGIAColor > &TriangleGIAColors) |
| |
| template<typename SpatialAccelerator , typename SolverParticlesOrRange > |
| CHAOS_API void | Init (const SolverParticlesOrRange &Particles, const FSolverReal Dt, const FPBDTriangleMeshCollisions::FTriangleSubMesh &CollidableSubMesh, const SpatialAccelerator &DynamicSpatial, const SpatialAccelerator &KinematicColliderSpatial, const TConstArrayView< FPBDTriangleMeshCollisions::FGIAColor > &VertexGIAColors, const TArray< FPBDTriangleMeshCollisions::FGIAColor > &TriangleGIAColors) |
| |
| template<typename SolverParticlesOrRange > |
| CHAOS_API FSolverVec3 | GetDelta (const SolverParticlesOrRange &InParticles, const int32 i) const |
| |
| const TArray< TVec4< int32 > > & | GetConstraints () const |
| |
| const TArray< FSolverVec3 > & | GetBarys () const |
| |
| FSolverReal | GetThickness () const |
| |
| FSolverReal | GetMaxThickness () const |
| |
| FSolverReal | GetParticleThickness (int32 ParticleIndex) const |
| |
| const FPBDFlatWeightMap & | GetThicknessWeighted () const |
| |
| bool | GetGlobalIntersectionAnalysis () const |
| |
| const TArray< bool > & | GetFlipNormals () const |
| |
| const TArray< int32 > & | GetKinematicCollidingParticles () const |
| |
| const TArray< TMap< int32, FSolverReal > > & | GetKinematicColliderTimers () const |
| |
| const FTriangleMesh * | GetKinematicColliderTriangleMesh () const |
| |
| const FTriangleMesh & | GetTriangleMesh () const |
| |
| void | SetThicknessWeighted (const FSolverVec2 InThickness) |
| |
| void | SetFrictionCoefficient (FSolverReal InFrictionCoefficient) |
| |
| template<typename SolverParticlesOrRange > |
| void | Apply (SolverParticlesOrRange &Particles, const FSolverReal Dt, const int32 ConstraintIndex) const |
| |
| template<typename SolverParticlesOrRange > |
| CHAOS_API void | Apply (SolverParticlesOrRange &InParticles, const FSolverReal Dt) const |
| |
| void | Apply (FSolverParticles &InParticles, const FSolverReal Dt, const TArray< int32 > &InConstraintIndices) const |
| |
| CHAOS_API void | UpdateLinearSystem (const FSolverParticlesRange &Particles, const FSolverReal Dt, FEvolutionLinearSystem &LinearSystem) const |
| |
| TConstArrayView< int32 > | GetFaceCollisionLayers () const |
| |
| const TArray< TVector< int32, 2 > > & | GetVertexCollisionLayers () const |
| |
| FSolverReal | GetConstraintThickness (const int32 ConstraintIndex) const |
| |
| FSolverReal | GetConstraintFrictionCoefficient (const int32 ConstraintIndex) const |
| |
| template<typename SpatialAccelerator , typename SolverParticlesOrRange > |
| void | Init (const SolverParticlesOrRange &Particles, const SpatialAccelerator &Spatial, const TConstArrayView< FPBDTriangleMeshCollisions::FGIAColor > &VertexGIAColors, const TArray< FPBDTriangleMeshCollisions::FGIAColor > &TriangleGIAColors) |
| |
| template<typename SpatialAccelerator , typename SolverParticlesOrRange > |
| void | Init (const SolverParticlesOrRange &Particles, const FSolverReal Dt, const FPBDTriangleMeshCollisions::FTriangleSubMesh &CollidableSubMesh, const SpatialAccelerator &DynamicSpatial, const SpatialAccelerator &KinematicColliderSpatial, const TConstArrayView< FPBDTriangleMeshCollisions::FGIAColor > &VertexGIAColors, const TArray< FPBDTriangleMeshCollisions::FGIAColor > &TriangleGIAColors) |
| |
| template<typename SolverParticlesOrRange > |
| FSolverVec3 | GetDelta (const SolverParticlesOrRange &Particles, const int32 ConstraintIndex) const |
| |
| template<typename SolverParticlesOrRange > |
| void | Apply (SolverParticlesOrRange &InParticles, const FSolverReal Dt) const |
| |