[ODE] Rolling ball bouncing problem
skjold@cistron.nl
skjold at cistron.nl
Mon Feb 10 08:35:02 2003
Hi,
Alright, I really don't know a lot about friction models, but I did a little testing. I got the best bounce when enabling the dContactApprox1 flag for *all* contacts.
When I enabled the flag only for collisions with the ball, I got the same thing you got: After contact it rolled onwards parallel to the beam it bounced against. But when I enabled the flag for literally all contacts, the ball bounced off somewhat correctly.
I say 'somewhat' correctly, because the ball does seem to be briefly jerking around partly inside the beam before it heads off at a reasonable reflection angle. I suspect it has to do with the CFM/ERP settings and the bouncyness of the contact surfaces, but hopefully that's a matter of applying proper 'tweakage' :)
In any case, I don't know what this means. It seems strange to me that I had to use dContactApprox1 for all contacts in the whole simulation to make it work, but then again what do I know about it. I just wanted to mention this, it might be useful for you or others that know more about friction and ODE innards. For the rest, I might be of more help trying to fix your mouse from here :P
greets
> I tryed setting the dContactApprox1 (for pyramidal friction) in the
> appropriate contact joints but this didn't change anything to the
> behavior of my ball...
>
> This seems to be a very simple problem, but it fails... Anyone succeeded
> with bouncing a rolling sphere against a box ?
>
> I blew up my computer mouse to extract the ball and played a little bit
> with it, bumping it into the wall of my office. I could see that my
> rolling mouse ball, bounced almost exactly like if it was not rolling
> (i.e., sliding on ice). However, in my ODE simulation, this is not yet
> the case... It seems that the angular velocity is not changed after the
> collision, whereas I belive it should be drastically changed. Still
> trying desesperately to tune the parameters (mu, ball mass, etc.) and
> check my code and to fix my mouse...
>
> -Olivier