Class TangentFrictionOneBody
- Namespace
- BepuPhysics.Constraints.Contact
- Assembly
- BepuPhysics.dll
Handles the tangent friction implementation for one body contact constraints.
public static class TangentFrictionOneBody
- Inheritance
-
TangentFrictionOneBody
- Inherited Members
Methods
ApplyImpulse(in Jacobians, in BodyInertiaWide, in Vector2Wide, ref BodyVelocityWide)
Transforms an impulse from constraint space to world space, uses it to modify the cached world space velocities of the bodies.
public static void ApplyImpulse(in TangentFrictionOneBody.Jacobians jacobians, in BodyInertiaWide inertiaA, in Vector2Wide correctiveImpulse, ref BodyVelocityWide wsvA)
Parameters
jacobians
TangentFrictionOneBody.JacobiansinertiaA
BodyInertiaWidecorrectiveImpulse
Vector2WidewsvA
BodyVelocityWide
ComputeCorrectiveImpulse(in BodyVelocityWide, in Symmetric2x2Wide, in Jacobians, in Vector<float>, ref Vector2Wide, out Vector2Wide)
public static void ComputeCorrectiveImpulse(in BodyVelocityWide wsvA, in Symmetric2x2Wide effectiveMass, in TangentFrictionOneBody.Jacobians jacobians, in Vector<float> maximumImpulse, ref Vector2Wide accumulatedImpulse, out Vector2Wide correctiveCSI)
Parameters
wsvA
BodyVelocityWideeffectiveMass
Symmetric2x2Widejacobians
TangentFrictionOneBody.JacobiansmaximumImpulse
Vector<float>accumulatedImpulse
Vector2WidecorrectiveCSI
Vector2Wide
ComputeJacobians(in Vector3Wide, in Vector3Wide, in Vector3Wide, out Jacobians)
public static void ComputeJacobians(in Vector3Wide tangentX, in Vector3Wide tangentY, in Vector3Wide offsetA, out TangentFrictionOneBody.Jacobians jacobians)
Parameters
tangentX
Vector3WidetangentY
Vector3WideoffsetA
Vector3Widejacobians
TangentFrictionOneBody.Jacobians
Solve(in Vector3Wide, in Vector3Wide, in Vector3Wide, in BodyInertiaWide, in Vector<float>, ref Vector2Wide, ref BodyVelocityWide)
public static void Solve(in Vector3Wide tangentX, in Vector3Wide tangentY, in Vector3Wide offsetToManifoldCenterA, in BodyInertiaWide inertiaA, in Vector<float> maximumImpulse, ref Vector2Wide accumulatedImpulse, ref BodyVelocityWide wsvA)
Parameters
tangentX
Vector3WidetangentY
Vector3WideoffsetToManifoldCenterA
Vector3WideinertiaA
BodyInertiaWidemaximumImpulse
Vector<float>accumulatedImpulse
Vector2WidewsvA
BodyVelocityWide
WarmStart(in Vector3Wide, in Vector3Wide, in Vector3Wide, in BodyInertiaWide, in Vector2Wide, ref BodyVelocityWide)
public static void WarmStart(in Vector3Wide tangentX, in Vector3Wide tangentY, in Vector3Wide offsetToManifoldCenterA, in BodyInertiaWide inertiaA, in Vector2Wide accumulatedImpulse, ref BodyVelocityWide wsvA)
Parameters
tangentX
Vector3WidetangentY
Vector3WideoffsetToManifoldCenterA
Vector3WideinertiaA
BodyInertiaWideaccumulatedImpulse
Vector2WidewsvA
BodyVelocityWide