Apply body pair filtering at broadphase.

mj_contactFilter removed geom pairs where their bodies share the same weldid, but this check can be applied at broadphase instead of at geom-geom level.

PiperOrigin-RevId: 507435848
Change-Id: Ia37c741071dc5e1c26686dd319f42c9bd334d305
This commit is contained in:
Nimrod Gileadi
2023-02-06 03:45:15 -08:00
committed by Copybara-Service
parent 79fffdc0ae
commit dc3a900809
3 changed files with 114 additions and 36 deletions
+2 -3
View File
@@ -38,9 +38,8 @@ void mj_collideGeoms(const mjModel* m, mjData* d,
int g1, int g2, int flg_user, mjtNum usermargin);
// number of possible collisions based on fitlers and geom types
int mj_contactFilter(int type1, int contype1, int conaffinity1, int weldbody1, int weldparent1,
int type2, int contype2, int conaffinity2, int weldbody2, int weldparent2,
int filterparent);
int mj_contactFilter(int contype1, int conaffinity1,
int contype2, int conaffinity2);
#ifdef __cplusplus
}