Table of Contents

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