8#ifndef JPH_PLATFORM_DOXYGEN  
   16    JPH_INLINE 
void             CalculateSpringPropertiesHelper(
float inDeltaTime, 
float inInvEffectiveMass, 
float inBias, 
float inC, 
float inStiffness, 
float inDamping, 
float &outEffectiveMass)
 
   28        mSoftness = 1.0f / (inDeltaTime * (inDamping + inDeltaTime * inStiffness));
 
   33        mBias = inBias + inDeltaTime * inStiffness * mSoftness * inC;
 
   64        outEffectiveMass = 1.0f / (inInvEffectiveMass + mSoftness);
 
   88        outEffectiveMass = 1.0f / inInvEffectiveMass;
 
   90        if (inFrequency > 0.0f)
 
   93            float omega = 2.0f * JPH_PI * inFrequency;
 
   96            float k = outEffectiveMass * 
Square(omega);
 
   97            float c = 2.0f * outEffectiveMass * inDamping * omega;
 
   99            CalculateSpringPropertiesHelper(inDeltaTime, inInvEffectiveMass, inBias, inC, k, c, outEffectiveMass);
 
  118        if (inStiffness > 0.0f)
 
  120            CalculateSpringPropertiesHelper(inDeltaTime, inInvEffectiveMass, inBias, inC, inStiffness, inDamping, outEffectiveMass);
 
  124            outEffectiveMass = 1.0f / inInvEffectiveMass;
 
  133        return mSoftness != 0.0f;
 
  137    inline float                GetBias(
float inTotalLambda)
 const 
  161        return mSoftness * inTotalLambda + mBias;
 
  166    float                       mSoftness  = 0.0f;
 
#define JPH_NAMESPACE_END
Definition: Core.h:378
 
#define JPH_MSVC_SUPPRESS_WARNING(w)
Definition: Core.h:286
 
#define JPH_NAMESPACE_BEGIN
Definition: Core.h:372
 
JPH_INLINE constexpr T Square(T inV)
Square a value.
Definition: Math.h:52
 
Class used in other constraint parts to calculate the required bias factor in the lagrange multiplier...
Definition: SpringPart.h:14
 
void CalculateSpringPropertiesWithFrequencyAndDamping(float inDeltaTime, float inInvEffectiveMass, float inBias, float inC, float inFrequency, float inDamping, float &outEffectiveMass)
Definition: SpringPart.h:86
 
void CalculateSpringPropertiesWithStiffnessAndDamping(float inDeltaTime, float inInvEffectiveMass, float inBias, float inC, float inStiffness, float inDamping, float &outEffectiveMass)
Definition: SpringPart.h:116
 
float GetBias(float inTotalLambda) const
Get total bias b, including supplied bias and bias for spring: lambda = J v + b.
Definition: SpringPart.h:137
 
void CalculateSpringPropertiesWithBias(float inBias)
Definition: SpringPart.h:71
 
bool IsActive() const
Returns if this spring is active.
Definition: SpringPart.h:131