aboutsummaryrefslogtreecommitdiff
path: root/src/dynamics/solver/position_constraint.rs
diff options
context:
space:
mode:
authorSébastien Crozet <developer@crozet.re>2020-09-01 14:02:59 +0200
committerSébastien Crozet <developer@crozet.re>2020-09-01 14:02:59 +0200
commit9622827dc6aadb391512b95381edb1efc26b1b90 (patch)
tree3b15362d6f7736f8d30bc78b6e33ff51c893751f /src/dynamics/solver/position_constraint.rs
parent03b437f278bbcbd391acd23a4d8fa074915eb00c (diff)
downloadrapier-9622827dc6aadb391512b95381edb1efc26b1b90.tar.gz
rapier-9622827dc6aadb391512b95381edb1efc26b1b90.tar.bz2
rapier-9622827dc6aadb391512b95381edb1efc26b1b90.zip
Fix constraints resolution with non-identity relative collider position.
Diffstat (limited to 'src/dynamics/solver/position_constraint.rs')
-rw-r--r--src/dynamics/solver/position_constraint.rs4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/dynamics/solver/position_constraint.rs b/src/dynamics/solver/position_constraint.rs
index 608a342..69fcf57 100644
--- a/src/dynamics/solver/position_constraint.rs
+++ b/src/dynamics/solver/position_constraint.rs
@@ -104,8 +104,8 @@ impl PositionConstraint {
let mut local_p2 = [Point::origin(); MAX_MANIFOLD_POINTS];
for l in 0..manifold_points.len() {
- local_p1[l] = manifold_points[l].local_p1 + shift1;
- local_p2[l] = manifold_points[l].local_p2 + shift2;
+ local_p1[l] = manifold.delta1 * (manifold_points[l].local_p1 + shift1);
+ local_p2[l] = manifold.delta2 * (manifold_points[l].local_p2 + shift2);
}
let constraint = PositionConstraint {