Struct ContactNonconvexOneBodyFunctions<TPrestep, TAccumulatedImpulses>
- Namespace
 - BepuPhysics.Constraints.Contact
 
- Assembly
 - BepuPhysics.dll
 
public struct ContactNonconvexOneBodyFunctions<TPrestep, TAccumulatedImpulses> : IOneBodyConstraintFunctions<TPrestep, TAccumulatedImpulses> where TPrestep : struct, INonconvexContactPrestep<TPrestep> where TAccumulatedImpulses : struct
  Type Parameters
TPrestepTAccumulatedImpulses
- Implements
 - 
      IOneBodyConstraintFunctions<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
IncrementallyUpdateContactData(in Vector<float>, in BodyVelocityWide, ref TPrestep)
public void IncrementallyUpdateContactData(in Vector<float> dt, in BodyVelocityWide velocity, ref TPrestep prestep)
  Parameters
dtVector<float>velocityBodyVelocityWideprestepTPrestep
IncrementallyUpdateForSubstep(in Vector<float>, in BodyVelocityWide, ref TPrestep)
public static void IncrementallyUpdateForSubstep(in Vector<float> dt, in BodyVelocityWide wsvA, ref TPrestep prestep)
  Parameters
dtVector<float>wsvABodyVelocityWideprestepTPrestep
Solve(in Vector3Wide, in QuaternionWide, in BodyInertiaWide, float, float, ref TPrestep, ref TAccumulatedImpulses, ref BodyVelocityWide)
public static void Solve(in Vector3Wide positionA, in QuaternionWide orientationA, in BodyInertiaWide inertiaA, float dt, float inverseDt, ref TPrestep prestep, ref TAccumulatedImpulses accumulatedImpulses, ref BodyVelocityWide wsvA)
  Parameters
positionAVector3WideorientationAQuaternionWideinertiaABodyInertiaWidedtfloatinverseDtfloatprestepTPrestepaccumulatedImpulsesTAccumulatedImpulseswsvABodyVelocityWide
UpdateForNewPose(in Vector3Wide, in QuaternionWide, in BodyInertiaWide, in BodyVelocityWide, in Vector<float>, in TAccumulatedImpulses, ref TPrestep)
public void UpdateForNewPose(in Vector3Wide positionA, in QuaternionWide orientationA, in BodyInertiaWide inertiaA, in BodyVelocityWide wsvA, in Vector<float> dt, in TAccumulatedImpulses accumulatedImpulses, ref TPrestep prestep)
  Parameters
positionAVector3WideorientationAQuaternionWideinertiaABodyInertiaWidewsvABodyVelocityWidedtVector<float>accumulatedImpulsesTAccumulatedImpulsesprestepTPrestep
WarmStart(in Vector3Wide, in QuaternionWide, in BodyInertiaWide, ref TPrestep, ref TAccumulatedImpulses, ref BodyVelocityWide)
public static void WarmStart(in Vector3Wide positionA, in QuaternionWide orientationA, in BodyInertiaWide inertiaA, ref TPrestep prestep, ref TAccumulatedImpulses accumulatedImpulses, ref BodyVelocityWide wsvA)
  Parameters
positionAVector3WideorientationAQuaternionWideinertiaABodyInertiaWideprestepTPrestepaccumulatedImpulsesTAccumulatedImpulseswsvABodyVelocityWide