diff options
| author | Sébastien Crozet <developer@crozet.re> | 2023-01-22 19:01:09 +0100 |
|---|---|---|
| committer | Sébastien Crozet <developer@crozet.re> | 2023-01-22 19:01:09 +0100 |
| commit | 26596bdc2ef7537619ab763668381f8b5496b726 (patch) | |
| tree | 1ddab05177fba9f61ad68c779c1f9bb09fd35a64 /src/pipeline/physics_pipeline.rs | |
| parent | 1a4183cc94acc3210e4ae467abbea7d68e51c5ff (diff) | |
| download | rapier-voxels.tar.gz rapier-voxels.tar.bz2 rapier-voxels.zip | |
Voxel fracture experimentsvoxels
Diffstat (limited to 'src/pipeline/physics_pipeline.rs')
| -rw-r--r-- | src/pipeline/physics_pipeline.rs | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/pipeline/physics_pipeline.rs b/src/pipeline/physics_pipeline.rs index 358efed..c25445f 100644 --- a/src/pipeline/physics_pipeline.rs +++ b/src/pipeline/physics_pipeline.rs @@ -191,11 +191,13 @@ impl PhysicsPipeline { } let mut manifolds = Vec::new(); + let mut active_pairs = Vec::new(); narrow_phase.select_active_contacts( islands, bodies, &mut self.contact_pair_indices, &mut manifolds, + &mut active_pairs, &mut self.manifold_indices, ); impulse_joints.select_active_interactions( @@ -507,6 +509,9 @@ impl PhysicsPipeline { }; while remaining_substeps > 0 { + self.clear_modified_colliders(colliders, &mut modified_colliders); + removed_colliders.clear(); + // If there are more than one CCD substep, we need to split // the timestep into multiple intervals. First, estimate the // size of the time slice we will integrate for this substep. @@ -581,7 +586,7 @@ impl PhysicsPipeline { // If CCD is enabled, execute the CCD motion clamping. if ccd_is_enabled { - // NOTE: don't the forces into account when updating the CCD active flags because + // NOTE: don't take the forces into account when updating the CCD active flags because // they have already been integrated into the velocities by the solver. let ccd_active = ccd_solver.update_ccd_active_flags( islands, |
