aboutsummaryrefslogtreecommitdiff
path: root/src/dynamics/solver
diff options
context:
space:
mode:
Diffstat (limited to 'src/dynamics/solver')
-rw-r--r--src/dynamics/solver/island_solver.rs3
-rw-r--r--src/dynamics/solver/parallel_island_solver.rs2
-rw-r--r--src/dynamics/solver/velocity_constraint.rs3
-rw-r--r--src/dynamics/solver/velocity_ground_constraint.rs3
4 files changed, 6 insertions, 5 deletions
diff --git a/src/dynamics/solver/island_solver.rs b/src/dynamics/solver/island_solver.rs
index 7ce142a..b548c6b 100644
--- a/src/dynamics/solver/island_solver.rs
+++ b/src/dynamics/solver/island_solver.rs
@@ -59,8 +59,7 @@ impl IslandSolver {
}
counters.solver.velocity_update_time.resume();
- bodies
- .foreach_active_island_body_mut_internal(island_id, |_, rb| rb.integrate(params.dt()));
+ bodies.foreach_active_island_body_mut_internal(island_id, |_, rb| rb.integrate(params.dt));
counters.solver.velocity_update_time.pause();
if manifold_indices.len() != 0 || joint_indices.len() != 0 {
diff --git a/src/dynamics/solver/parallel_island_solver.rs b/src/dynamics/solver/parallel_island_solver.rs
index 3b7ab9f..1393067 100644
--- a/src/dynamics/solver/parallel_island_solver.rs
+++ b/src/dynamics/solver/parallel_island_solver.rs
@@ -234,7 +234,7 @@ impl ParallelIslandSolver {
let dvel = mj_lambdas[rb.active_set_offset];
rb.linvel += dvel.linear;
rb.angvel += rb.world_inv_inertia_sqrt.transform_vector(dvel.angular);
- rb.integrate(params.dt());
+ rb.integrate(params.dt);
positions[rb.active_set_offset] = rb.position;
}
}
diff --git a/src/dynamics/solver/velocity_constraint.rs b/src/dynamics/solver/velocity_constraint.rs
index 948081d..f9e38ac 100644
--- a/src/dynamics/solver/velocity_constraint.rs
+++ b/src/dynamics/solver/velocity_constraint.rs
@@ -144,6 +144,7 @@ impl VelocityConstraint {
out_constraints: &mut Vec<AnyVelocityConstraint>,
push: bool,
) {
+ let inv_dt = params.inv_dt();
let rb1 = &bodies[manifold.body_pair.body1];
let rb2 = &bodies[manifold.body_pair.body2];
let mj_lambda1 = rb1.active_set_offset;
@@ -244,7 +245,7 @@ impl VelocityConstraint {
rhs += manifold.restitution * rhs
}
- rhs += manifold_point.dist.max(0.0) * params.inv_dt();
+ rhs += manifold_point.dist.max(0.0) * inv_dt;
let impulse = manifold_points[k].impulse * warmstart_coeff;
diff --git a/src/dynamics/solver/velocity_ground_constraint.rs b/src/dynamics/solver/velocity_ground_constraint.rs
index d8ef8be..23b41c1 100644
--- a/src/dynamics/solver/velocity_ground_constraint.rs
+++ b/src/dynamics/solver/velocity_ground_constraint.rs
@@ -63,6 +63,7 @@ impl VelocityGroundConstraint {
out_constraints: &mut Vec<AnyVelocityConstraint>,
push: bool,
) {
+ let inv_dt = params.inv_dt();
let mut rb1 = &bodies[manifold.body_pair.body1];
let mut rb2 = &bodies[manifold.body_pair.body2];
let flipped = !rb2.is_dynamic();
@@ -176,7 +177,7 @@ impl VelocityGroundConstraint {
rhs += manifold.restitution * rhs
}
- rhs += manifold_point.dist.max(0.0) * params.inv_dt();
+ rhs += manifold_point.dist.max(0.0) * inv_dt;
let impulse = manifold_points[k].impulse * warmstart_coeff;