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