aboutsummaryrefslogtreecommitdiff
path: root/src/dynamics
diff options
context:
space:
mode:
Diffstat (limited to 'src/dynamics')
-rw-r--r--src/dynamics/solver/island_solver.rs8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/dynamics/solver/island_solver.rs b/src/dynamics/solver/island_solver.rs
index 2953f98..159bfa7 100644
--- a/src/dynamics/solver/island_solver.rs
+++ b/src/dynamics/solver/island_solver.rs
@@ -41,7 +41,7 @@ impl IslandSolver {
joint_indices: &[JointIndex],
multibodies: &mut MultibodyJointSet,
) {
- counters.solver.velocity_resolution_time.resume();
+ counters.solver.velocity_assembly_time.resume();
let num_solver_iterations = base_params.num_solver_iterations.get()
+ islands.active_island_additional_solver_iterations(island_id);
@@ -76,8 +76,10 @@ impl IslandSolver {
&mut self.contact_constraints,
&mut self.joint_constraints,
);
+ counters.solver.velocity_assembly_time.pause();
// SOLVE
+ counters.solver.velocity_resolution_time.resume();
self.velocity_solver.solve_constraints(
&params,
num_solver_iterations,
@@ -86,8 +88,10 @@ impl IslandSolver {
&mut self.contact_constraints,
&mut self.joint_constraints,
);
+ counters.solver.velocity_resolution_time.pause();
// WRITEBACK
+ counters.solver.velocity_writeback_time.resume();
self.joint_constraints.writeback_impulses(impulse_joints);
self.contact_constraints.writeback_impulses(manifolds);
self.velocity_solver.writeback_bodies(
@@ -98,6 +102,6 @@ impl IslandSolver {
bodies,
multibodies,
);
- counters.solver.velocity_resolution_time.pause();
+ counters.solver.velocity_writeback_time.pause();
}
}