Add MaxDepenetrationVelocity for Ragdoll

This commit is contained in:
Wojtek Figat
2021-11-04 12:12:36 +01:00
parent 26e9ddc8e0
commit a45ecf7ec3
2 changed files with 9 additions and 1 deletions

View File

@@ -42,6 +42,7 @@ float Ragdoll::InitBone(RigidBody* rigidBody, int32& nodeIndex, Transform& local
// Initialize body
rigidBody->SetSolverIterationCounts(PositionSolverIterations, VelocitySolverIterations);
rigidBody->SetMaxDepenetrationVelocity(MaxDepenetrationVelocity);
}
return weight;
}

View File

@@ -42,9 +42,16 @@ public:
/// The minimum number of velocity iterations the physics solver should perform for bodies in this ragdoll. Higher values improve stability but affect performance.
/// </summary>
/// <seealso cref="RigidBody.SetSolverIterationCounts"/>
API_FIELD(Attributes="EditorOrder(100), EditorDisplay(\"Ragdoll\"), Limit(1, 255)")
API_FIELD(Attributes="EditorOrder(110), EditorDisplay(\"Ragdoll\"), Limit(1, 255)")
uint8 VelocitySolverIterations = 2;
/// <summary>
/// The maximum depenetration velocity when ragdoll's rigidbody moving out of penetrating state. Using this property can smooth objects moving out of colliding state and prevent unstable motion.
/// </summary>
/// <seealso cref="RigidBody.MaxDepenetrationVelocity"/>
API_FIELD(Attributes="EditorOrder(120), EditorDisplay(\"Ragdoll\"), Limit(0)")
float MaxDepenetrationVelocity = MAX_float;
public:
/// <summary>