|
| JPH_INLINE void | CalculateConstraintProperties (float inInvMass1, Mat44Arg inInvI1, Vec3Arg inR1PlusU, float inInvMass2, Mat44Arg inInvI2, Vec3Arg inR2, Vec3Arg inWorldSpaceAxis, float inBias=0.0f) |
| | See AxisConstraintPart::CalculateConstraintProperties.
|
| |
| void | WarmStart (MotionProperties *ioMotionProperties1, float inInvMass1, MotionProperties *ioMotionProperties2, float inInvMass2, Vec3Arg inWorldSpaceAxis, float inWarmStartImpulseRatio) |
| | See AxisConstraintPart::WarmStart.
|
| |
| JPH_INLINE float | SolveVelocityConstraintGetTotalLambda (const MotionProperties *ioMotionProperties1, const MotionProperties *ioMotionProperties2, Vec3Arg inWorldSpaceAxis) const |
| | Part 1 of AxisConstraint::SolveVelocityConstraint: get the total lambda.
|
| |
| JPH_INLINE bool | SolveVelocityConstraintApplyLambda (MotionProperties *ioMotionProperties1, float inInvMass1, MotionProperties *ioMotionProperties2, float inInvMass2, Vec3Arg inWorldSpaceAxis, float inTotalLambda) |
| | Part 2 of AxisConstraint::SolveVelocityConstraint: apply new lambda.
|
| |
| JPH_INLINE bool | SolveVelocityConstraint (MotionProperties *ioMotionProperties1, float inInvMass1, MotionProperties *ioMotionProperties2, float inInvMass2, Vec3Arg inWorldSpaceAxis, float inMinLambda, float inMaxLambda) |
| | See: AxisConstraintPart::SolveVelocityConstraint.
|
| |
| bool | SolvePositionConstraint (Body &ioBody1, float inInvMass1, Body &ioBody2, float inInvMass2, Vec3Arg inWorldSpaceAxis, float inC, float inBaumgarte) const |
| | See: AxisConstraintPart::SolvePositionConstraint.
|
| |
| void | Deactivate () |
| | Deactivate this constraint.
|
| |
| bool | IsActive () const |
| | Check if constraint is active.
|
| |
| void | SetTotalLambda (float inLambda) |
| | Override total lagrange multiplier, can be used to set the initial value for warm starting.
|
| |
| float | GetTotalLambda () const |
| | Return lagrange multiplier.
|
| |
This is a copy of AxisConstraintPart, specialized to handle contact constraints. See the documentation of AxisConstraintPart for more documentation behind the math. Warning: Make sure there is 1 float of padding after this class because we read using Vec3::sLoadFloat3Unsafe and a Float3 is the last member.