diff options
| author | Crozet Sébastien <developer@crozet.re> | 2021-04-29 11:42:44 +0200 |
|---|---|---|
| committer | Crozet Sébastien <developer@crozet.re> | 2021-04-29 12:09:35 +0200 |
| commit | 5cf805075ec8612249d692c319d099f4454931da (patch) | |
| tree | 50f85d12fb1a6783fbd28f0e65f709657334b0c8 /src/pipeline | |
| parent | 38104663261fc1617644cc17f6aa3b723a7db2ef (diff) | |
| download | rapier-5cf805075ec8612249d692c319d099f4454931da.tar.gz rapier-5cf805075ec8612249d692c319d099f4454931da.tar.bz2 rapier-5cf805075ec8612249d692c319d099f4454931da.zip | |
Fix compilation of the parallel version
Diffstat (limited to 'src/pipeline')
| -rw-r--r-- | src/pipeline/collision_pipeline.rs | 7 | ||||
| -rw-r--r-- | src/pipeline/physics_pipeline.rs | 6 |
2 files changed, 9 insertions, 4 deletions
diff --git a/src/pipeline/collision_pipeline.rs b/src/pipeline/collision_pipeline.rs index c9ab119..455e75d 100644 --- a/src/pipeline/collision_pipeline.rs +++ b/src/pipeline/collision_pipeline.rs @@ -3,16 +3,19 @@ use crate::data::{ComponentSet, ComponentSetMut, ComponentSetOption}; use crate::dynamics::{ RigidBodyActivation, RigidBodyChanges, RigidBodyColliders, RigidBodyDominance, RigidBodyHandle, - RigidBodyIds, RigidBodyPosition, RigidBodySet, RigidBodyType, RigidBodyVelocity, + RigidBodyIds, RigidBodyPosition, RigidBodyType, RigidBodyVelocity, }; use crate::geometry::{ BroadPhase, BroadPhasePairEvent, ColliderBroadPhaseData, ColliderChanges, ColliderGroups, - ColliderHandle, ColliderMaterial, ColliderPair, ColliderParent, ColliderPosition, ColliderSet, + ColliderHandle, ColliderMaterial, ColliderPair, ColliderParent, ColliderPosition, ColliderShape, ColliderType, NarrowPhase, }; use crate::math::Real; use crate::pipeline::{EventHandler, PhysicsHooks}; +#[cfg(feature = "default-sets")] +use crate::{dynamics::RigidBodySet, geometry::ColliderSet}; + /// The collision pipeline, responsible for performing collision detection between colliders. /// /// This structure only contains temporary data buffers. It can be dropped and replaced by a fresh diff --git a/src/pipeline/physics_pipeline.rs b/src/pipeline/physics_pipeline.rs index 9557d1f..328e810 100644 --- a/src/pipeline/physics_pipeline.rs +++ b/src/pipeline/physics_pipeline.rs @@ -183,7 +183,7 @@ impl PhysicsPipeline { use rayon::prelude::*; use std::sync::atomic::Ordering; - let num_islands = ilands.num_islands(); + let num_islands = islands.num_islands(); let solvers = &mut self.solvers[..num_islands]; let bodies = &std::sync::atomic::AtomicPtr::new(bodies as *mut _); @@ -200,6 +200,7 @@ impl PhysicsPipeline { solver.solve_position_constraints( scope, island_id, + islands, integration_parameters, bodies, ) @@ -306,7 +307,7 @@ impl PhysicsPipeline { use rayon::prelude::*; use std::sync::atomic::Ordering; - let num_islands = bodies.num_islands(); + let num_islands = islands.num_islands(); let solvers = &mut self.solvers[..num_islands]; let bodies = &std::sync::atomic::AtomicPtr::new(bodies as *mut _); let manifolds = &std::sync::atomic::AtomicPtr::new(&mut manifolds as *mut _); @@ -331,6 +332,7 @@ impl PhysicsPipeline { solver.init_constraints_and_solve_velocity_constraints( scope, island_id, + islands, integration_parameters, bodies, manifolds, |
