diff options
| author | Crozet Sébastien <developer@crozet.re> | 2021-02-25 15:40:54 +0100 |
|---|---|---|
| committer | Crozet Sébastien <developer@crozet.re> | 2021-02-25 15:40:54 +0100 |
| commit | f53d0438ed63417684c961ece307f8dc57ac7a5c (patch) | |
| tree | e6150657dcef7a5d9c3db4961e420145aa6dedc8 /src/geometry | |
| parent | 9cdd34c741d6e45b7dcaf797c3704d1bc9dfeaae (diff) | |
| download | rapier-f53d0438ed63417684c961ece307f8dc57ac7a5c.tar.gz rapier-f53d0438ed63417684c961ece307f8dc57ac7a5c.tar.bz2 rapier-f53d0438ed63417684c961ece307f8dc57ac7a5c.zip | |
Contact modification: make the contact normal modifiable too.
Diffstat (limited to 'src/geometry')
| -rw-r--r-- | src/geometry/narrow_phase.rs | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/geometry/narrow_phase.rs b/src/geometry/narrow_phase.rs index 28c53f1..9c635dc 100644 --- a/src/geometry/narrow_phase.rs +++ b/src/geometry/narrow_phase.rs @@ -594,6 +594,7 @@ impl NarrowPhase { let mut modifiable_solver_contacts = std::mem::replace(&mut manifold.data.solver_contacts, Vec::new()); let mut modifiable_user_data = manifold.data.user_data; + let mut modifiable_normal = manifold.data.normal; let mut context = ContactModificationContext { rigid_body1: rb1, @@ -604,12 +605,14 @@ impl NarrowPhase { collider2: co2, manifold, solver_contacts: &mut modifiable_solver_contacts, + normal: &mut modifiable_normal, user_data: &mut modifiable_user_data, }; hooks.modify_solver_contacts(&mut context); manifold.data.solver_contacts = modifiable_solver_contacts; + manifold.data.normal = modifiable_normal; manifold.data.user_data = modifiable_user_data; } } |
