favreau / bullet

Automatically exported from code.google.com/p/bullet
0 stars 0 forks source link

CCD+restitution applies to large impulses #550

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
1. Have a CCD body with a very fast impulse (~10 times it size).
Set his restitution to 0.3
2. Let it collide with a non Rigid(!) CollisionBody
Set his restitution to 0.99
3. returned normalImpulse can be much higher then the original velocity of the 
body.

What is the expected output? What do you see instead?
The returned impulse should never make the CCD body faster then before.

What version of the product are you using? On what operating system?
2.79, from trunk 20 Sep. 2011

Please provide any additional information below.
Maybe the cause for the problem is this line:
btScalar denom1 = body2? 
body2->computeImpulseDenominator(contactPositionWorld,normal) : 0.f;
When body2 is NULL then denom1 is always 0.

Original issue reported on code.google.com by linz...@gmx.de on 20 Sep 2011 at 5:10

GoogleCodeExporter commented 9 years ago
Might be the same issue as #356

Original comment by cont...@vicariousentertainment.com on 21 Sep 2011 at 2:15

GoogleCodeExporter commented 9 years ago
I want to note that the problem does not appear when restitution is set to 0 on 
the CCD body.

Original comment by linz...@gmx.de on 21 Sep 2011 at 10:30

GoogleCodeExporter commented 9 years ago
This is fixed in latest trunk:

See https://code.google.com/p/bullet/source/detail?r=2570
Thanks for the report!

Original comment by erwin.coumans on 11 Sep 2012 at 3:16