|
| | TPBDCollisionSolverSimd () |
| |
| FSimdInt32 | NumManifoldPoints () const |
| |
| void | SetNumManifoldPoints (const FSimdInt32 &InNum) |
| |
| void | SetManifoldPointsBuffer (const int32 InBeginIndex, const int32 InMax) |
| |
| int32 | GetMaxManifoldPoints () const |
| |
| const FSimdManifoldPoint & | GetManifoldPoint (const int32 ManifoldPointIndex, const TArrayView< const FSimdManifoldPoint > &ManifoldPointsBuffer) const |
| |
| void | Reset () |
| |
| void | ResetManifold () |
| |
| void | SetFriction (const FSimdRealf InStaticFriction, const FSimdRealf InDynamicFriction, const FSimdRealf InVelocityFriction) |
| |
| void | SetStiffness (const FSimdRealf InStiffness) |
| |
| void | InitManifoldPoints (const TArrayView< FSimdManifoldPoint > &ManifoldPointsBuffer) |
| |
| void | SetManifoldPoint (const int32 ManifoldPointIndex, const int32 LaneIndex, const TArrayView< FSimdManifoldPoint > &ManifoldPointsBuffer, 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, const FSolverBody &Body0, const FSolverBody &Body1, const FSolverReal InvMScale0, const FSolverReal InvIScale0, const FSolverReal InvMScale1, const FSolverReal InvIScale1) |
| |
| void | UpdateManifoldPointMass (const int32 ManifoldPointIndex, const int32 LaneIndex, const TArrayView< FSimdManifoldPoint > &ManifoldPointsBuffer, const FSolverBody &Body0, const FSolverBody &Body1, const FSolverReal InvMScale0, const FSolverReal InvIScale0, const FSolverReal InvMScale1, const FSolverReal InvIScale1) |
| | Update the cached mass properties based on the current body transforms.
|
| |
| void | UpdateManifoldPointMassNormal (const int32 ManifoldPointIndex, const int32 LaneIndex, const TArrayView< FSimdManifoldPoint > &ManifoldPointsBuffer, const FSolverBody &Body0, const FSolverBody &Body1, const FSolverReal InvMScale0, const FSolverReal InvIScale0, const FSolverReal InvMScale1, const FSolverReal InvIScale1) |
| |
| void | UpdateMassNormal (const int32 LaneIndex, const TArrayView< FSimdManifoldPoint > &ManifoldPointsBuffer, const FSolverBody &Body0, const FSolverBody &Body1, const FSolverReal InvMScale0, const FSolverReal InvIScale0, const FSolverReal InvMScale1, const FSolverReal InvIScale1) |
| |
| void | SolvePositionNoFriction (const TArrayView< FSimdManifoldPoint > &ManifoldPointsBuffer, const FSimdSolverBodyPtr &Body0, const FSimdSolverBodyPtr &Body1, const FSimdRealf &MaxPushOut) |
| |
| void | SolvePositionWithFriction (const TArrayView< FSimdManifoldPoint > &ManifoldPointsBuffer, const FSimdSolverBodyPtr &Body0, const FSimdSolverBodyPtr &Body1, const FSimd4Realf &MaxPushOut, const FSimd4Realf &FrictionStiffnessScale) |
| |
| void | SolveVelocityNoFriction (const TArrayView< FSimdManifoldPoint > &ManifoldPointsBuffer, const FSimdSolverBodyPtr &Body0, const FSimdSolverBodyPtr &Body1, const FSimdRealf &Dt) |
| |
| void | SolveVelocityWithFrictionImpl (const TArrayView< FSimdManifoldPoint > &ManifoldPointsBuffer, const FSimdSolverBodyPtr &Body0, const FSimdSolverBodyPtr &Body1, const FSimdRealf &Dt, const FSimd4Realf &FrictionStiffnessScale) |
| |
| void | SolveVelocityWithFriction (const TArrayView< FSimdManifoldPoint > &ManifoldPointsBuffer, const FSimdSolverBodyPtr &Body0, const FSimdSolverBodyPtr &Body1, const FSimdRealf &Dt, const FSimd4Realf &FrictionStiffnessScale) |
| |
| FSolverVec3 | GetNetPushOut (const int32 ManifoldPointIndex, const int32 LaneIndex, const TArrayView< FSimdManifoldPoint > &ManifoldPointsBuffer) const |
| |
| FSolverVec3 | GetNetImpulse (const int32 ManifoldPointIndex, const int32 LaneIndex, const TArrayView< FSimdManifoldPoint > &ManifoldPointsBuffer) const |
| |
| FSolverReal | GetStaticFrictionRatio (const int32 ManifoldPointIndex, const int32 LaneIndex, const TArrayView< FSimdManifoldPoint > &ManifoldPointsBuffer) const |
| |
| int32 | GetBufferIndex (const int32 ManifoldPointIndex) const |
| |
| void | Init () |
| |
template<int TNumLanes>
class Chaos::Private::TPBDCollisionSolverSimd< TNumLanes >
Holds the solver