Well it is a convex sweep test, from the most outer API, but just before the call to rayTest is this comment /// unfortunately the implementation for rayTest and convexSweepTest duplicated, albeit practically identical
In any case the problem I describe is real and is exactly on topic to the GJK simplex numerical issues in this thread. The failures ultimately occur from btGjkPairDetector::getClosestPoints()
There is sample code and a whole bunch of repro cases in the issue I wrote up
http://code.google.com/p/bullet/issues/detail?id=250
Bullet's Voronoi Simplex Solver
- Erwin Coumans
- Site Admin
- Posts: 4221
- Joined: Sun Jun 26, 2005 6:43 pm
- Location: California, USA
- Contact:
Re: Bullet's Voronoi Simplex Solver
Ah, the convex sweep test indeed uses GJK, but the btCollisionWorld::rayTest doesn't.langford wrote:Well it is a convex sweep test
Thanks a lot for the reproduction case. I checked it, and this particular case is fixed now: Bullet detected a degenerate GJK case, falls back into EPA but finds no penetration. The second GJK run (without all the degeneracy checks) reports a valid positive distance.
Can you please check latest Bullet 2.75-rc4 and see if it fixes your issues?
http://code.google.com/p/bullet/issues/detail?id=250
If you have other failures, please report them in the issue tracker.
Erwin