diff options
| author | Sébastien Crozet <developer@crozet.re> | 2022-06-24 19:00:34 +0200 |
|---|---|---|
| committer | Sébastien Crozet <developer@crozet.re> | 2022-07-01 12:00:32 +0200 |
| commit | c9d8277377681a6c5162abe4e8f17a058eebcfd4 (patch) | |
| tree | b5c01635c6530ddcbb1453e8f9b29e3bc9a50910 /src_testbed/physics | |
| parent | d6b61898612d05e12b52d9636e9bb21dccdca4bb (diff) | |
| download | rapier-c9d8277377681a6c5162abe4e8f17a058eebcfd4.tar.gz rapier-c9d8277377681a6c5162abe4e8f17a058eebcfd4.tar.bz2 rapier-c9d8277377681a6c5162abe4e8f17a058eebcfd4.zip | |
Add contact force events generated above a user-defined threshold
Diffstat (limited to 'src_testbed/physics')
| -rw-r--r-- | src_testbed/physics/mod.rs | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src_testbed/physics/mod.rs b/src_testbed/physics/mod.rs index a848ea8..ebcc326 100644 --- a/src_testbed/physics/mod.rs +++ b/src_testbed/physics/mod.rs @@ -3,7 +3,7 @@ use rapier::dynamics::{ CCDSolver, ImpulseJointSet, IntegrationParameters, IslandManager, MultibodyJointSet, RigidBodySet, }; -use rapier::geometry::{BroadPhase, ColliderSet, CollisionEvent, NarrowPhase}; +use rapier::geometry::{BroadPhase, ColliderSet, CollisionEvent, CollisionForceEvent, NarrowPhase}; use rapier::math::{Real, Vector}; use rapier::pipeline::{PhysicsHooks, PhysicsPipeline, QueryPipeline}; @@ -107,11 +107,13 @@ impl PhysicsState { } pub struct PhysicsEvents { - pub events: Receiver<CollisionEvent>, + pub collision_events: Receiver<CollisionEvent>, + pub contact_force_events: Receiver<CollisionForceEvent>, } impl PhysicsEvents { pub fn poll_all(&self) { - while let Ok(_) = self.events.try_recv() {} + while let Ok(_) = self.collision_events.try_recv() {} + while let Ok(_) = self.contact_force_events.try_recv() {} } } |
