Hi,
I'm using Bullet 2.78 with a btAxisSweep3.
Right when adding a Ghost into the world, its addOverlappingObj() is fired for RigidBodies who are only overlapping on 2 out of 3 axis.
This bug only happens when
1) using the btAxisSweep
2) upon adding a Ghost to the world (it removes the overlap pair when world::stepSimulation())
3) and only if the Ghost and RigidBody overlap on axis x and y but NOT z
!) When using a btDbvtBroadphase, this bug does not happen.
Looking at btAxisSweep3::::addHandle() I noticed this ...
sortMinDown(0, pHandle->m_minEdges[0], dispatcher,false);
sortMaxDown(0, pHandle->m_maxEdges[0], dispatcher,false);
sortMinDown(1, pHandle->m_minEdges[1], dispatcher,false);
sortMaxDown(1, pHandle->m_maxEdges[1], dispatcher,false);
sortMinDown(2, pHandle->m_minEdges[2], dispatcher,true);
sortMaxDown(2, pHandle->m_maxEdges[2], dispatcher,true);
The addOverlappingObj() gets fired when calling sortMinDown(2, ...).
I'm not familiar with this code yet. Why are we calling sortMinDown with "update overlaps" set to true only in this axis ?
Thanks in advance,
cg
Bug: btAxisSweep3 causes overlap false positives with Ghosts
Re: Bug: btAxisSweep3 causes overlap false positives with Gh
In my experience, the fastest way to get Bullet issues fixed is to create a repro case based on the basic bullet demo
and upload it along with an issue description here:
http://code.google.com/p/bullet/issues/list
Otherwise bugs get often overlooked or simply forgotten.
and upload it along with an issue description here:
http://code.google.com/p/bullet/issues/list
Otherwise bugs get often overlooked or simply forgotten.
Re: Bug: btAxisSweep3 causes overlap false positives with Gh
Awesome!
thanks, will do!
cg
thanks, will do!
cg