gz-sim icon indicating copy to clipboard operation
gz-sim copied to clipboard

Set max contacts for collision pairs

Open iche033 opened this issue 1 year ago • 0 comments

🎉 New feature

Depends on https://github.com/gazebosim/gz-physics/pull/582

Summary

Set max_contacts physics parameter in physics engines that support this feature. See https://github.com/gazebosim/gz-physics/pull/582 for support in dartsim's ode collision detector.

Test it

Here's an example test world: contacts.sdf.

The test world has a large box with an ellipsoid inside. The contact points are visualized in blue:

Before: No max contacts set. Many contacts detected. Low RTF (~30%)

max_contacts_none

After: Max contacts set based on SDF default value (20). Limited to 20 contacts. High RTF (~9X%)

max_contacts

Checklist

  • [x] Signed all commits for DCO
  • [ ] Added tests
  • [ ] Added example and/or tutorial
  • [ ] Updated documentation (as needed)
  • [ ] Updated migration guide (as needed)
  • [ ] Consider updating Python bindings (if the library has them)
  • [ ] codecheck passed (See contributing)
  • [ ] All tests passed (See test coverage)
  • [ ] While waiting for a review on your PR, please help review another open pull request to support the maintainers

Note to maintainers: Remember to use Squash-Merge and edit the commit message to match the pull request summary while retaining Signed-off-by messages.

iche033 avatar Dec 20 '23 00:12 iche033