aboutsummaryrefslogtreecommitdiff
path: root/src/geometry
diff options
context:
space:
mode:
authorSébastien Crozet <developer@crozet.re>2022-07-07 10:58:10 +0200
committerSébastien Crozet <developer@crozet.re>2022-07-07 11:01:39 +0200
commit73788a21ab02b27c12f6ab30901b85e928b25067 (patch)
tree3a2f63cd9d97349e56bffdd585db824ceafba1af /src/geometry
parent06ec9a0e76cea7a035b4335c591cd3fddd0d9999 (diff)
downloadrapier-73788a21ab02b27c12f6ab30901b85e928b25067.tar.gz
rapier-73788a21ab02b27c12f6ab30901b85e928b25067.tar.bz2
rapier-73788a21ab02b27c12f6ab30901b85e928b25067.zip
Add ActiveEvents::CONTACT_FORCE_EVENTS for consistency with ActiveEvents::COLLISION_EVENTS
Diffstat (limited to 'src/geometry')
-rw-r--r--src/geometry/collider.rs12
1 files changed, 10 insertions, 2 deletions
diff --git a/src/geometry/collider.rs b/src/geometry/collider.rs
index 7b0cc4c..bbea8b0 100644
--- a/src/geometry/collider.rs
+++ b/src/geometry/collider.rs
@@ -26,7 +26,7 @@ pub struct Collider {
pub(crate) material: ColliderMaterial,
pub(crate) flags: ColliderFlags,
pub(crate) bf_data: ColliderBroadPhaseData,
- pub(crate) contact_force_event_threshold: Real,
+ contact_force_event_threshold: Real,
/// User-defined data associated to this collider.
pub user_data: u128,
}
@@ -37,6 +37,14 @@ impl Collider {
self.changes = ColliderChanges::all();
}
+ pub(crate) fn effective_contact_force_event_threshold(&self) -> Real {
+ if self.flags.active_events.contains(ActiveEvents::CONTACT_FORCE_EVENTS) {
+ self.contact_force_event_threshold
+ } else {
+ Real::MAX
+ }
+ }
+
/// The rigid body this collider is attached to.
pub fn parent(&self) -> Option<RigidBodyHandle> {
self.parent.map(|parent| parent.handle)
@@ -412,7 +420,7 @@ impl ColliderBuilder {
active_collision_types: ActiveCollisionTypes::default(),
active_hooks: ActiveHooks::empty(),
active_events: ActiveEvents::empty(),
- contact_force_event_threshold: Real::MAX,
+ contact_force_event_threshold: 0.0,
}
}