Class PenetrationLimitOneBody
- Namespace
- BepuPhysics.Constraints.Contact
- Assembly
- BepuPhysics.dll
public static class PenetrationLimitOneBody
- Inheritance
-
PenetrationLimitOneBody
- Inherited Members
-
Methods
ApplyImpulse(in BodyInertiaWide, in Vector3Wide, in Vector3Wide, in Vector<float>, ref BodyVelocityWide)
public static void ApplyImpulse(in BodyInertiaWide inertiaA, in Vector3Wide normal, in Vector3Wide angularA, in Vector<float> correctiveImpulse, ref BodyVelocityWide wsvA)
Parameters
inertiaA BodyInertiaWide
normal Vector3Wide
angularA Vector3Wide
correctiveImpulse Vector<float>
wsvA BodyVelocityWide
ComputeCorrectiveImpulse(in BodyVelocityWide, in Vector3Wide, in Vector3Wide, in Vector<float>, in Vector<float>, in Vector<float>, ref Vector<float>, out Vector<float>)
public static void ComputeCorrectiveImpulse(in BodyVelocityWide wsvA, in Vector3Wide normal, in Vector3Wide angularA, in Vector<float> biasVelocity, in Vector<float> softnessImpulseScale, in Vector<float> effectiveMass, ref Vector<float> accumulatedImpulse, out Vector<float> correctiveCSI)
Parameters
wsvA BodyVelocityWide
normal Vector3Wide
angularA Vector3Wide
biasVelocity Vector<float>
softnessImpulseScale Vector<float>
effectiveMass Vector<float>
accumulatedImpulse Vector<float>
correctiveCSI Vector<float>
Solve(in BodyInertiaWide, in Vector3Wide, in Vector3Wide, in Vector<float>, in Vector<float>, in Vector<float>, in Vector<float>, in Vector<float>, in Vector<float>, ref Vector<float>, ref BodyVelocityWide)
public static void Solve(in BodyInertiaWide inertiaA, in Vector3Wide normal, in Vector3Wide contactOffsetA, in Vector<float> depth, in Vector<float> positionErrorToVelocity, in Vector<float> effectiveMassCFMScale, in Vector<float> maximumRecoveryVelocity, in Vector<float> inverseDt, in Vector<float> softnessImpulseScale, ref Vector<float> accumulatedImpulse, ref BodyVelocityWide wsvA)
Parameters
inertiaA BodyInertiaWide
normal Vector3Wide
contactOffsetA Vector3Wide
depth Vector<float>
positionErrorToVelocity Vector<float>
effectiveMassCFMScale Vector<float>
maximumRecoveryVelocity Vector<float>
inverseDt Vector<float>
softnessImpulseScale Vector<float>
accumulatedImpulse Vector<float>
wsvA BodyVelocityWide
UpdatePenetrationDepth(in Vector<float>, in Vector3Wide, in Vector3Wide, in BodyVelocityWide, ref Vector<float>)
public static void UpdatePenetrationDepth(in Vector<float> dt, in Vector3Wide contactOffset, in Vector3Wide normal, in BodyVelocityWide velocity, ref Vector<float> penetrationDepth)
Parameters
dt Vector<float>
contactOffset Vector3Wide
normal Vector3Wide
velocity BodyVelocityWide
penetrationDepth Vector<float>
WarmStart(in BodyInertiaWide, in Vector3Wide, in Vector3Wide, in Vector<float>, ref BodyVelocityWide)
public static void WarmStart(in BodyInertiaWide inertiaA, in Vector3Wide normal, in Vector3Wide contactOffsetA, in Vector<float> accumulatedImpulse, ref BodyVelocityWide wsvA)
Parameters
inertiaA BodyInertiaWide
normal Vector3Wide
contactOffsetA Vector3Wide
accumulatedImpulse Vector<float>
wsvA BodyVelocityWide