aboutsummaryrefslogtreecommitdiff
path: root/src_testbed/testbed.rs
diff options
context:
space:
mode:
authorThierry Berger <contact@thierryberger.com>2024-06-09 13:20:58 +0200
committerGitHub <noreply@github.com>2024-06-09 13:20:58 +0200
commit8160b4ebdb06afb39f493b5c8f65d1dd280b3dfb (patch)
tree1ce461648d0bec5f0dcd343ed213e41764ab2ccd /src_testbed/testbed.rs
parenta8a0f297f52d4336c0d3b0effc24401e8066183b (diff)
downloadrapier-8160b4ebdb06afb39f493b5c8f65d1dd280b3dfb.tar.gz
rapier-8160b4ebdb06afb39f493b5c8f65d1dd280b3dfb.tar.bz2
rapier-8160b4ebdb06afb39f493b5c8f65d1dd280b3dfb.zip
feat: change the character controller’s solve_character_collision_impulses to take multiple CharacterCollision (#646)
* character controller: solve multiple collisions * add solve multiple collisions to changelog * chore: apply review comments --------- Co-authored-by: Sébastien Crozet <sebcrozet@dimforge.com>
Diffstat (limited to 'src_testbed/testbed.rs')
-rw-r--r--src_testbed/testbed.rs23
1 files changed, 10 insertions, 13 deletions
diff --git a/src_testbed/testbed.rs b/src_testbed/testbed.rs
index 1defef6..dc747ed 100644
--- a/src_testbed/testbed.rs
+++ b/src_testbed/testbed.rs
@@ -811,19 +811,16 @@ impl<'a, 'b, 'c, 'd, 'e, 'f> Testbed<'a, 'b, 'c, 'd, 'e, 'f> {
QueryFilter::new().exclude_rigid_body(character_handle),
|c| collisions.push(c),
);
-
- for collision in &collisions {
- controller.solve_character_collision_impulses(
- phx.integration_parameters.dt,
- &mut phx.bodies,
- &phx.colliders,
- &phx.query_pipeline,
- character_collider.shape(),
- character_mass,
- collision,
- QueryFilter::new().exclude_rigid_body(character_handle),
- )
- }
+ controller.solve_character_collision_impulses(
+ phx.integration_parameters.dt,
+ &mut phx.bodies,
+ &phx.colliders,
+ &phx.query_pipeline,
+ character_collider.shape(),
+ character_mass,
+ collisions,
+ QueryFilter::new().exclude_rigid_body(character_handle),
+ );
let character_body = &mut phx.bodies[character_handle];
let pos = character_body.position();