Struct ContactNonconvexTwoBodyFunctions<TPrestep, TAccumulatedImpulses>
- Namespace
- BepuPhysics.Constraints.Contact
- Assembly
- BepuPhysics.dll
public struct ContactNonconvexTwoBodyFunctions<TPrestep, TAccumulatedImpulses> : ITwoBodyConstraintFunctions<TPrestep, TAccumulatedImpulses> where TPrestep : struct, ITwoBodyNonconvexContactPrestep<TPrestep> where TAccumulatedImpulses : struct
Type Parameters
TPrestepTAccumulatedImpulses
- Implements
-
ITwoBodyConstraintFunctions<TPrestep, TAccumulatedImpulses>
- Inherited Members
Properties
RequiresIncrementalSubstepUpdates
Gets whether this constraint type requires incremental updates for each substep taken beyond the first.
public static bool RequiresIncrementalSubstepUpdates { get; }
Property Value
Methods
IncrementallyUpdateForSubstep(in Vector<float>, in BodyVelocityWide, in BodyVelocityWide, ref TPrestep)
public static void IncrementallyUpdateForSubstep(in Vector<float> dt, in BodyVelocityWide wsvA, in BodyVelocityWide wsvB, ref TPrestep prestep)
Parameters
dtVector<float>wsvABodyVelocityWidewsvBBodyVelocityWideprestepTPrestep
Solve(in Vector3Wide, in QuaternionWide, in BodyInertiaWide, in Vector3Wide, in QuaternionWide, in BodyInertiaWide, float, float, ref TPrestep, ref TAccumulatedImpulses, ref BodyVelocityWide, ref BodyVelocityWide)
public static void Solve(in Vector3Wide positionA, in QuaternionWide orientationA, in BodyInertiaWide inertiaA, in Vector3Wide positionB, in QuaternionWide orientationB, in BodyInertiaWide inertiaB, float dt, float inverseDt, ref TPrestep prestep, ref TAccumulatedImpulses accumulatedImpulses, ref BodyVelocityWide wsvA, ref BodyVelocityWide wsvB)
Parameters
positionAVector3WideorientationAQuaternionWideinertiaABodyInertiaWidepositionBVector3WideorientationBQuaternionWideinertiaBBodyInertiaWidedtfloatinverseDtfloatprestepTPrestepaccumulatedImpulsesTAccumulatedImpulseswsvABodyVelocityWidewsvBBodyVelocityWide
WarmStart(in Vector3Wide, in QuaternionWide, in BodyInertiaWide, in Vector3Wide, in QuaternionWide, in BodyInertiaWide, ref TPrestep, ref TAccumulatedImpulses, ref BodyVelocityWide, ref BodyVelocityWide)
public static void WarmStart(in Vector3Wide positionA, in QuaternionWide orientationA, in BodyInertiaWide inertiaA, in Vector3Wide positionB, in QuaternionWide orientationB, in BodyInertiaWide inertiaB, ref TPrestep prestep, ref TAccumulatedImpulses accumulatedImpulses, ref BodyVelocityWide wsvA, ref BodyVelocityWide wsvB)
Parameters
positionAVector3WideorientationAQuaternionWideinertiaABodyInertiaWidepositionBVector3WideorientationBQuaternionWideinertiaBBodyInertiaWideprestepTPrestepaccumulatedImpulsesTAccumulatedImpulseswsvABodyVelocityWidewsvBBodyVelocityWide