Problem with concave/concave collision detection

Thomas
Posts: 7
Joined: Fri Aug 17, 2007 2:47 pm

Problem with concave/concave collision detection

Post by Thomas »

Hello

I am using Bullet/GImpact for polygon soup/polygon soup detection collision.
I create a btCollisionWorld, add 2 btCollisionObject with btGImpactMeshShape shapes.
However when the 2 meshes have different number of triangles it crashes in btCollisionWorld::performDiscreteCollisionDetection.
I tried to look at the code and in gim_box_set.h, line 606, I replaced
m_collision_pairs->push_pair(m_boxset1->getNodeData(node0),m_boxset1->getNodeData(node1));
by
m_collision_pairs->push_pair(m_boxset0->getNodeData(node0),m_boxset1->getNodeData(node1));

It doesn't crash anymore and seems to work but I don't know if it is the right way to do this.

Regards,

Thomas
DevO
Posts: 95
Joined: Fri Mar 31, 2006 7:13 pm

Post by DevO »

Are you using GIMPACT 0.2 ?
May be this is source of my problme with it...

http://continuousphysics.com/Bullet/php ... php?t=1224
Thomas
Posts: 7
Joined: Fri Aug 17, 2007 2:47 pm

Post by Thomas »

I am using Bullet 2.55 and the GImpact shipped in the Extras directory.
User avatar
Erwin Coumans
Site Admin
Posts: 4221
Joined: Sun Jun 26, 2005 6:43 pm
Location: California, USA

Post by Erwin Coumans »

It looks like a bug in the optional Extras/GIMPACT library, so I fixed it.

Please test with upcoming Bullet 2.56 release if this improved GIMPACT.
Thanks,
Erwin
Thomas
Posts: 7
Joined: Fri Aug 17, 2007 2:47 pm

Post by Thomas »

I tested with bullet 2.56. (btw great software!).
It doesn't crash.

But it seems collision is detected whereas objects are not colliding (they are quite close).

Regards,

Thomas
Thomas
Posts: 7
Joined: Fri Aug 17, 2007 2:47 pm

Post by Thomas »

Maybe I have the problem mentioned in http://continuousphysics.com/Bullet/php ... php?t=1224
User avatar
projectileman
Posts: 109
Joined: Thu Dec 14, 2006 4:27 pm
Location: Colombia

Post by projectileman »

Hi Thomas,

Thanks for your feedback.

You've already solve that problem with this bug fix:

Code: Select all

m_collision_pairs->push_pair(m_boxset0->getNodeData(node0),m_boxset1->getNodeData(node1)); 
Thanks for your contribution. I didn't make enough testing with GIMPACT meshes: the MovingConvaveDemo uses the same Bunny mesh for all objects so I didn't notice that it had problems with different meshes.

Thanks.