diff options
| author | Crozet Sébastien <developer@crozet.re> | 2020-10-06 16:32:24 +0200 |
|---|---|---|
| committer | Crozet Sébastien <developer@crozet.re> | 2020-10-06 16:38:34 +0200 |
| commit | fc72aa6845a21b3af5d862968eddd3116036ac42 (patch) | |
| tree | b52864a0b05a711f342e104b4eea5325bc84d1cc | |
| parent | 8c388687935b0f09a6a03b9de96fc80d15dd67c9 (diff) | |
| download | rapier-fc72aa6845a21b3af5d862968eddd3116036ac42.tar.gz rapier-fc72aa6845a21b3af5d862968eddd3116036ac42.tar.bz2 rapier-fc72aa6845a21b3af5d862968eddd3116036ac42.zip | |
Fix examples.
| -rw-r--r-- | src/geometry/broad_phase_multi_sap.rs | 14 | ||||
| -rw-r--r-- | src/pipeline/physics_pipeline.rs | 42 |
2 files changed, 18 insertions, 38 deletions
diff --git a/src/geometry/broad_phase_multi_sap.rs b/src/geometry/broad_phase_multi_sap.rs index d85eae3..8e69d24 100644 --- a/src/geometry/broad_phase_multi_sap.rs +++ b/src/geometry/broad_phase_multi_sap.rs @@ -700,16 +700,13 @@ impl BroadPhase { mod test { use crate::dynamics::{JointSet, RigidBodyBuilder, RigidBodySet}; use crate::geometry::{BroadPhase, ColliderBuilder, ColliderSet, NarrowPhase}; - use crate::pipeline::PhysicsPipeline; #[test] fn test_add_update_remove() { let mut broad_phase = BroadPhase::new(); - let mut narrow_phase = NarrowPhase::new(); let mut bodies = RigidBodySet::new(); let mut colliders = ColliderSet::new(); let mut joints = JointSet::new(); - let mut pipeline = PhysicsPipeline::new(); let rb = RigidBodyBuilder::new_dynamic().build(); let co = ColliderBuilder::ball(0.5).build(); @@ -718,15 +715,8 @@ mod test { broad_phase.update_aabbs(0.0, &bodies, &mut colliders); - pipeline.remove_rigid_body( - hrb, - &mut broad_phase, - &mut narrow_phase, - &mut bodies, - &mut colliders, - &mut joints, - ); - + bodies.remove(hrb, &mut colliders, &mut joints); + broad_phase.maintain(&mut colliders); broad_phase.update_aabbs(0.0, &bodies, &mut colliders); // Create another body. diff --git a/src/pipeline/physics_pipeline.rs b/src/pipeline/physics_pipeline.rs index 462b341..47fd260 100644 --- a/src/pipeline/physics_pipeline.rs +++ b/src/pipeline/physics_pipeline.rs @@ -316,14 +316,7 @@ mod test { let to_delete = [h1, h2, h3, h4]; for h in &to_delete { - pipeline.remove_rigid_body( - *h, - &mut bf, - &mut nf, - &mut bodies, - &mut colliders, - &mut joints, - ); + bodies.remove(*h, &mut colliders, &mut joints); } pipeline.step( @@ -342,30 +335,27 @@ mod test { fn rigid_body_removal_snapshot_handle_determinism() { let mut colliders = ColliderSet::new(); let mut joints = JointSet::new(); - let mut pipeline = PhysicsPipeline::new(); - let mut bf = BroadPhase::new(); - let mut nf = NarrowPhase::new(); - let mut set = RigidBodySet::new(); + let mut bodies = RigidBodySet::new(); let rb = RigidBodyBuilder::new_dynamic().build(); - let h1 = set.insert(rb.clone()); - let h2 = set.insert(rb.clone()); - let h3 = set.insert(rb.clone()); + let h1 = bodies.insert(rb.clone()); + let h2 = bodies.insert(rb.clone()); + let h3 = bodies.insert(rb.clone()); - pipeline.remove_rigid_body(h1, &mut bf, &mut nf, &mut set, &mut colliders, &mut joints); - pipeline.remove_rigid_body(h3, &mut bf, &mut nf, &mut set, &mut colliders, &mut joints); - pipeline.remove_rigid_body(h2, &mut bf, &mut nf, &mut set, &mut colliders, &mut joints); + bodies.remove(h1, &mut colliders, &mut joints); + bodies.remove(h3, &mut colliders, &mut joints); + bodies.remove(h2, &mut colliders, &mut joints); - let ser_set = bincode::serialize(&set).unwrap(); - let mut set2: RigidBodySet = bincode::deserialize(&ser_set).unwrap(); + let ser_bodies = bincode::serialize(&bodies).unwrap(); + let mut bodies2: RigidBodySet = bincode::deserialize(&ser_bodies).unwrap(); - let h1a = set.insert(rb.clone()); - let h2a = set.insert(rb.clone()); - let h3a = set.insert(rb.clone()); + let h1a = bodies.insert(rb.clone()); + let h2a = bodies.insert(rb.clone()); + let h3a = bodies.insert(rb.clone()); - let h1b = set2.insert(rb.clone()); - let h2b = set2.insert(rb.clone()); - let h3b = set2.insert(rb.clone()); + let h1b = bodies2.insert(rb.clone()); + let h2b = bodies2.insert(rb.clone()); + let h3b = bodies2.insert(rb.clone()); assert_eq!(h1a, h1b); assert_eq!(h2a, h2b); |
