I've just spent a number of hours searching the forum and browsing the source, and I'm hoping someone here can give me some up-to-date advice about this topic.

I'm trying to solve an engineering problem:

-Thousands of rigid, concave, elements

-Each element is a trimesh, with potentially thousands of triangles

-The elements are static (non-moving, or alternatively, velocity=0)

-Required output is elements that are touching (within a tolerance), or within a "small" distance, and "area of contact" (again, within a tolerance)

-This doesn't need to be "real time" solution - returning a result in minutes would be great!

The problem sounds a lot like broadphase collision detection...or maybe not.

Currently, we are attempting to perform this task using SWIFT++ (http://gamma.cs.unc.edu/SWIFT++/).

But it's going to be brutal adapting this to a GPU environment...

Thanks,

Scott!

## Can BULLET be utilized for Proximity Detection?

### Re: Can BULLET be utilized for Proximity Detection?

It appears that no one has an answer.

In case someone wants to figure it out, I've posted an offer in the Career Opportunities sub forum.

http://bulletphysics.org/Bullet/phpBB3/ ... =16&t=4898

Thanks for your consideration.

In case someone wants to figure it out, I've posted an offer in the Career Opportunities sub forum.

http://bulletphysics.org/Bullet/phpBB3/ ... =16&t=4898

Thanks for your consideration.

- Erwin Coumans
- Site Admin
**Posts:**4221**Joined:**Sun Jun 26, 2005 6:43 pm**Location:**California, USA-
**Contact:**

### Re: Can BULLET be utilized for Proximity Detection?

With some small adjustments, Bullet should be able to do this.

Between convex objects, you can compute the closest distance and retrieve contact points, without change.

For concave triangle meshes, you can compute the results for overlapping triangles (closer than a given tolerance). You can use an acceleration structure to reduce the potential number of overlapping pairs (next to the broadphase).

The Bullet btCompoundShape or btGImpact could be used to represent each concave shape.

Thanks,

Erwin

Between convex objects, you can compute the closest distance and retrieve contact points, without change.

For concave triangle meshes, you can compute the results for overlapping triangles (closer than a given tolerance). You can use an acceleration structure to reduce the potential number of overlapping pairs (next to the broadphase).

The Bullet btCompoundShape or btGImpact could be used to represent each concave shape.

Thanks,

Erwin

### Re: Can BULLET be utilized for Proximity Detection?

I figured it might.Erwin Coumans wrote:With some small adjustments, Bullet should be able to do this.

I'm going to delve more deeply into what's involved, and see if I can make it work on my own first.

If not, I'll probably be back asking about those "small adjustments".

Thanks again.