|
| void | Reset () |
| |
| FORCEINLINE_DEBUGGABLE int32 | NumManifoldPoints () const |
| |
| FORCEINLINE_DEBUGGABLE int32 | AddManifoldPoint () |
| |
| FORCEINLINE_DEBUGGABLE void | SetWorldContact (const int32 ManifoldPointIndex, const FSolverVec3 &InRelativeContactPosition0, const FSolverVec3 &InRelativeContactPosition1, const FSolverVec3 &InWorldContactNormal, const FSolverVec3 &InWorldContactTangentU, const FSolverVec3 &InWorldContactTangentV, const FSolverReal InWorldContactDeltaNormal, const FSolverReal InWorldContactDeltaTangentU, const FSolverReal InWorldContactDeltaTangentV, const FSolverReal InWorldContactVelocityTargetNormal) |
| |
| FORCEINLINE_DEBUGGABLE void | InitContact (const int32 ManifoldPointIndex, const FConstraintSolverBody &Body0, const FConstraintSolverBody &Body1) |
| | Initialize the geometric data for the contact.
|
| |
| void | UpdateMass (const int32 ManifoldPointIndex, const FConstraintSolverBody &Body0, const FConstraintSolverBody &Body1) |
| | Update the cached mass properties based on the current body transforms.
|
| |
| void | UpdateMassNormal (const int32 ManifoldPointIndex, const FConstraintSolverBody &Body0, const FConstraintSolverBody &Body1) |
| | Update the contact mass for the normal correction This is used by shock propagation.
|
| |
| FORCEINLINE_DEBUGGABLE FSolverVec3 | GetNetPushOut (const int32 ManifoldPointIndex) const |
| |
| FORCEINLINE_DEBUGGABLE FSolverVec3 | GetNetImpulse (const int32 ManifoldPointIndex) const |
| |
| FORCEINLINE_DEBUGGABLE FSolverReal | GetStaticFrictionRatio (const int32 ManifoldPointIndex) const |
| |
| FORCEINLINE_DEBUGGABLE void | CalculateContactPositionErrorNormal (const int32 ManifoldPointIndex, const FConstraintSolverBody &Body0, const FConstraintSolverBody &Body1, const FSolverReal MaxPushOut, FSolverReal &OutContactDeltaNormal) const |
| | Calculate the position error at the current transforms.
|
| |
| FORCEINLINE_DEBUGGABLE void | CalculateContactPositionErrorTangential (const int32 ManifoldPointIndex, const FConstraintSolverBody &Body0, const FConstraintSolverBody &Body1, FSolverReal &OutContactDeltaTangentU, FSolverReal &OutContactDeltaTangentV) const |
| |
| FORCEINLINE_DEBUGGABLE void | CalculatePositionCorrectionNormal (const int32 ManifoldPointIndex, const FSolverReal Stiffness, FSolverReal ContactDeltaNormal, FConstraintSolverBody &Body0, FConstraintSolverBody &Body1, FSolverVec3 &InOutDX0, FSolverVec3 &InOutDR0, FSolverVec3 &InOutDX1, FSolverVec3 &InOutDR1) |
| |
| FORCEINLINE_DEBUGGABLE void | ApplyFrictionCone (const int32 ManifoldPointIndex, const FSolverReal StaticFriction, const FSolverReal DynamicFriction, const FSolverReal MaxFrictionPushOut, FSolverReal &InOutPushOutTangentU, FSolverReal &InOutPushOutTangentV) |
| |
| FORCEINLINE_DEBUGGABLE void | SolvePositionNoFriction (const FSolverReal Stiffness, const FSolverReal MaxPushOut, FConstraintSolverBody &Body0, FConstraintSolverBody &Body1) |
| |
| FORCEINLINE_DEBUGGABLE bool | SolvePositionWithFriction (const FSolverReal Stiffness, const FSolverReal Dt, const FSolverReal StaticFriction, const FSolverReal DynamicFriction, const FSolverReal MaxPushOut, FConstraintSolverBody &Body0, FConstraintSolverBody &Body1) |
| |
| FORCEINLINE_DEBUGGABLE void | CalculateContactVelocityErrorNormal (const int32 ManifoldPointIndex, const FConstraintSolverBody &Body0, const FConstraintSolverBody &Body1, FSolverReal &OutContactVelocityDeltaNormal) const |
| | Calculate the velocity error at the current transforms.
|
| |
| FORCEINLINE_DEBUGGABLE void | CalculateContactVelocityError (const int32 ManifoldPointIndex, const FConstraintSolverBody &Body0, const FConstraintSolverBody &Body1, const FSolverReal DynamicFriction, const FSolverReal Dt, FSolverReal &OutContactVelocityDeltaNormal, FSolverReal &OutContactVelocityDeltaTangent0, FSolverReal &OutContactVelocityDeltaTangent1) const |
| |
| FORCEINLINE_DEBUGGABLE void | SolveVelocity (const FSolverReal Stiffness, const FSolverReal Dt, const bool bApplyDynamicFriction, FConstraintSolverBody &Body0, FConstraintSolverBody &Body1) |
| |
| FORCEINLINE_DEBUGGABLE bool | ShouldSolveVelocity (const int32 ManifoldPointIndex) const |
| | Whether we need to solve velocity for this manifold point (only if we were penetrating or applied a pushout)
|
| |
A set of 4 manifold points in a FPBDCollisionSolver.