Ragdoll Wizard
WheelCollider Tutorial

Joint And Ragdoll Stability

Tips for improving joint and ragdoll stability.

  • Avoid small joint angles of “Angular Y Limit” and “Angular Z Limit”. Depending on your setup the minimum angles should be around 5 to 15 degrees in order to be stable. Instead of using a small angle try setting the angle to zero. This will lock the axis and provide a stable simulation.

  • Set the joint property “Enable Preprocessing” to false (unchecked). Disabling the preprocessing can help against joints “blowing up”. Joints can “blow up” if they are forced into situations where there is no possible way to satisfy the joint constraints. This can occur if jointed rigid bodies are pulled apart by static collision geometry, like spawning a ragdoll partially inside a wall.

  • 랙돌의 안정성 또는 신축 : 부분적으로 벽에 스폰되거나 막대한 힘에 밀리는 등 랙돌이 극한의 상황에 놓인 경우, 조인트 솔루션은 리지드 바디끼리 계속 연결을 유지할 수 없습니다. 이에 따라 그들이 신축하거나 “cloud of body parts”가 될 수 있습니다. “ConfigurableJoint.projectionMode” 또는 “CharacterJoint.enableProjection”을 사용하여 조인트의 프로젝션(projection)을 활성화하십시오.

  • 조인트에 의해 연결된 바디가 조금씩 떨리는 경우 Edit -> Project Settings -> Physics -> “Solver Iteration Count”를 늘려보십시오. 10–20을 시험해보십시오.

  • Never use direct use direct transform access with kinematic bodies jointed to other bodies. Doing so skips the step where PhysX computes internal velocities of corresponding bodies and thus makes solver provide unpleasant results. We’ve seen some 2D projects using direct transform access to flip characters via altering “transform.direction” on the root boon of the rig. This behaves much better if you use MovePosition / MoveRotation / Move instead.

  • Avoid large differences in the masses between jointed rigid bodies. It’s okay to have one body with twice as much mass as another, but when one mass is ten times larger, or even higher, than the other then the simulation can get jittery.

  • Try to avoid scaling different from 1 in the Transform containing Rigidbody or the Joint. The scaling might not be robust in all cases.

  • If Rigidbodies are overlapping when inserted into the world and you cannot avoid the overlap then you can try to lower the Rigidbody.maxDepenetrationVelocity to make the bodies exit out of each other in a more smooth manner.

Ragdoll Wizard
WheelCollider Tutorial