Search Unity

[BUG?] Infinite Rolling with high friction, angular drag and even sleep threshold

Discussion in 'Physics' started by kebrus, Jun 26, 2015.

  1. kebrus

    kebrus

    Joined:
    Oct 10, 2011
    Posts:
    415
    Hi

    So I have a stick that I want to be able to throw with a spinning force so I had it with 0 drag and a really small angular drag. But the object just couldn't stay put when in contact to the world. Increasing the drag would be a solution but then it would affect the throw and I need a general solution that I can use for a ton of objects not just this stick.

    So I decided to increase the friction to compensate and for the most part it works. The problem is that round colliders like the capsule now keep rolling instead of slowing down. I guess it makes sense because the energy must go somewhere in order to make it stop so I increased the angular drag. To my surprise I could only make the object stop with a value of 10, which is too high because now it gets to difficult to have the objects spin while on air. I then increase the sleep threshold to 0.05 from 0.005. This did help a bit because now I can make it stop a bit sooner with a value of 4. But the more I increase this threshold the odder the behavior, they stop for almost nothing.

    I just wanted to be able to roll a stick down the hill and then have it slow down in a straight field. But it either stops right away or it continues slowing to into the infinite. There's no middle term.

    In attachment is a sample project with the problem. Notice how it slows pretty drastically in the slope because of the high friction but the it continues on the floor into the infinite.

    [EDIT] uploaded a new version of the project with different set of balls using different drags, angular drags and even friction, In my PC at least, only one of the balls actually stops, one of the red ones, every other ball continues into the infinite, if I double the sleep threshold then two of the red balls stop. But it still doesn't make all others stop from low angular momentum. This looks like a bug to me, can anyone confirm this?

    [EDIT2] I opened up a support case (708489)
     

    Attached Files:

    Last edited: Jun 29, 2015