Search Unity

Character Ragdolls looking rough

Discussion in 'Physics' started by jchowdown-asla, May 11, 2017.

  1. jchowdown-asla

    jchowdown-asla

    Joined:
    May 10, 2017
    Posts:
    26
    Hi, I'm trying to implement character ragdolls in our game (5.5.2p4). I remember it being much cleaner and painless in older versions (4.x) but this newer version of Unity is very problematic for some reason.

    As a quick test, I'm calling AddForce on all the rigidbody components in my character. I'm only making this call once, so I would expect my character to get flung in the direction of the force, and crumple on the ground. However, I'm seeing my character continue to slide along, sometimes along a circular path, until it either falls off my world or stops (while jittering the whole time).

    Here's a video:


    (Even if I skip the AddForce and just set isKinematic=false, the character crumples straight down but eventually slides across the world.)

    Obviously there are two issues:
    1. Character slides around along ground
    2. Character joints still jitter like crazy
    I've checked the following settings:
    1. Applying random amounts of force between 4 and 20
    2. Character size appropriate (uniform scale of 1/1/1, unit is about 2 units tall)
    3. Character capsules: do they look ok (see attachment)
    4. Rigidbody has appropriate mass (5-14kg, depending on the body part)
    5. Rigidbody has nonzero drag (I've tried with something sane (1), as well as outrageous (1000)
    6. Rigidbody Interpolation settings tried: Interpolate and Extrapolate
    7. Phyics Material assigned to all colliders, Dynamic and Static friction both set to 1
    8. CharacterJoint Preprocessing: tried both enabled and disabled
    9. CharacterJoint Projections: tried both enabled and disabled
    Is there anything I'm missing? I've read all docs there is to read (http://docs.unity3d.com/Manual/RagdollStability.html).

    I know there's a brute force method to solving this, which is to just turn kinematic back on for all my rigidbodies, but that will just make the character abruptly stop in place. This is not a good solution for us.
     

    Attached Files: