aboutsummaryrefslogtreecommitdiff
path: root/src/dynamics/solver
diff options
context:
space:
mode:
authorCrozet Sébastien <developer@crozet.re>2021-06-01 12:36:01 +0200
committerCrozet Sébastien <developer@crozet.re>2021-06-01 12:36:01 +0200
commit826ce5f014281fd04b7a18238f102f2591d0b255 (patch)
treeb35c16371dcfac726c2821b7bfd9da21184155bd /src/dynamics/solver
parent1bef66fea941307a7305ddaebdb0abe3d0cb281f (diff)
downloadrapier-826ce5f014281fd04b7a18238f102f2591d0b255.tar.gz
rapier-826ce5f014281fd04b7a18238f102f2591d0b255.tar.bz2
rapier-826ce5f014281fd04b7a18238f102f2591d0b255.zip
Rework the event system
Diffstat (limited to 'src/dynamics/solver')
-rw-r--r--src/dynamics/solver/island_solver.rs4
-rw-r--r--src/dynamics/solver/joint_constraint/ball_position_constraint.rs8
-rw-r--r--src/dynamics/solver/joint_constraint/ball_position_constraint_wide.rs6
-rw-r--r--src/dynamics/solver/joint_constraint/fixed_position_constraint.rs6
-rw-r--r--src/dynamics/solver/joint_constraint/generic_position_constraint.rs6
-rw-r--r--src/dynamics/solver/joint_constraint/revolute_position_constraint.rs6
-rw-r--r--src/dynamics/solver/parallel_island_solver.rs2
7 files changed, 19 insertions, 19 deletions
diff --git a/src/dynamics/solver/island_solver.rs b/src/dynamics/solver/island_solver.rs
index 1e65341..0c4c323 100644
--- a/src/dynamics/solver/island_solver.rs
+++ b/src/dynamics/solver/island_solver.rs
@@ -113,7 +113,7 @@ impl IslandSolver {
let mut new_poss = *poss;
let new_vels = vels.apply_damping(params.dt, damping);
new_poss.next_position =
- vels.integrate(params.dt, &poss.position, &mprops.mass_properties.local_com);
+ vels.integrate(params.dt, &poss.position, &mprops.local_mprops.local_com);
bodies.set_internal(handle.0, new_vels);
bodies.set_internal(handle.0, new_poss);
@@ -140,7 +140,7 @@ impl IslandSolver {
.integrate(params.dt, vels, mprops)
.apply_damping(params.dt, &damping);
new_poss.next_position =
- vels.integrate(params.dt, &poss.position, &mprops.mass_properties.local_com);
+ vels.integrate(params.dt, &poss.position, &mprops.local_mprops.local_com);
bodies.set_internal(handle.0, new_vels);
bodies.set_internal(handle.0, new_poss);
diff --git a/src/dynamics/solver/joint_constraint/ball_position_constraint.rs b/src/dynamics/solver/joint_constraint/ball_position_constraint.rs
index 159cc77..0227960 100644
--- a/src/dynamics/solver/joint_constraint/ball_position_constraint.rs
+++ b/src/dynamics/solver/joint_constraint/ball_position_constraint.rs
@@ -34,8 +34,8 @@ impl BallPositionConstraint {
let (mprops2, ids2) = rb2;
Self {
- local_com1: mprops1.mass_properties.local_com,
- local_com2: mprops2.mass_properties.local_com,
+ local_com1: mprops1.local_mprops.local_com,
+ local_com2: mprops2.local_mprops.local_com,
im1: mprops1.effective_inv_mass,
im2: mprops2.effective_inv_mass,
ii1: mprops1.effective_world_inv_inertia_sqrt.squared(),
@@ -131,7 +131,7 @@ impl BallPositionGroundConstraint {
ii2: mprops2.effective_world_inv_inertia_sqrt.squared(),
local_anchor2: cparams.local_anchor1,
position2: ids2.active_set_offset,
- local_com2: mprops2.mass_properties.local_com,
+ local_com2: mprops2.local_mprops.local_com,
}
} else {
Self {
@@ -140,7 +140,7 @@ impl BallPositionGroundConstraint {
ii2: mprops2.effective_world_inv_inertia_sqrt.squared(),
local_anchor2: cparams.local_anchor2,
position2: ids2.active_set_offset,
- local_com2: mprops2.mass_properties.local_com,
+ local_com2: mprops2.local_mprops.local_com,
}
}
}
diff --git a/src/dynamics/solver/joint_constraint/ball_position_constraint_wide.rs b/src/dynamics/solver/joint_constraint/ball_position_constraint_wide.rs
index 6b00639..ea462ed 100644
--- a/src/dynamics/solver/joint_constraint/ball_position_constraint_wide.rs
+++ b/src/dynamics/solver/joint_constraint/ball_position_constraint_wide.rs
@@ -40,8 +40,8 @@ impl WBallPositionConstraint {
let (mprops1, ids1) = rbs1;
let (mprops2, ids2) = rbs2;
- let local_com1 = Point::from(gather![|ii| mprops1[ii].mass_properties.local_com]);
- let local_com2 = Point::from(gather![|ii| mprops2[ii].mass_properties.local_com]);
+ let local_com1 = Point::from(gather![|ii| mprops1[ii].local_mprops.local_com]);
+ let local_com2 = Point::from(gather![|ii| mprops2[ii].local_mprops.local_com]);
let im1 = SimdReal::from(gather![|ii| mprops1[ii].effective_inv_mass]);
let im2 = SimdReal::from(gather![|ii| mprops2[ii].effective_inv_mass]);
let ii1 = AngularInertia::<SimdReal>::from(gather![
@@ -169,7 +169,7 @@ impl WBallPositionGroundConstraint {
cparams[ii].local_anchor2
}]);
let position2 = gather![|ii| ids2[ii].active_set_offset];
- let local_com2 = Point::from(gather![|ii| mprops2[ii].mass_properties.local_com]);
+ let local_com2 = Point::from(gather![|ii| mprops2[ii].local_mprops.local_com]);
Self {
anchor1,
diff --git a/src/dynamics/solver/joint_constraint/fixed_position_constraint.rs b/src/dynamics/solver/joint_constraint/fixed_position_constraint.rs
index f8945c3..3ab13f7 100644
--- a/src/dynamics/solver/joint_constraint/fixed_position_constraint.rs
+++ b/src/dynamics/solver/joint_constraint/fixed_position_constraint.rs
@@ -46,8 +46,8 @@ impl FixedPositionConstraint {
im2,
ii1,
ii2,
- local_com1: mprops1.mass_properties.local_com,
- local_com2: mprops2.mass_properties.local_com,
+ local_com1: mprops1.local_mprops.local_com,
+ local_com2: mprops2.local_mprops.local_com,
lin_inv_lhs,
ang_inv_lhs,
}
@@ -125,7 +125,7 @@ impl FixedPositionGroundConstraint {
position2: ids2.active_set_offset,
im2: mprops2.effective_inv_mass,
ii2: mprops2.effective_world_inv_inertia_sqrt.squared(),
- local_com2: mprops2.mass_properties.local_com,
+ local_com2: mprops2.local_mprops.local_com,
impulse: 0.0,
}
}
diff --git a/src/dynamics/solver/joint_constraint/generic_position_constraint.rs b/src/dynamics/solver/joint_constraint/generic_position_constraint.rs
index 76901b1..a7b5ea0 100644
--- a/src/dynamics/solver/joint_constraint/generic_position_constraint.rs
+++ b/src/dynamics/solver/joint_constraint/generic_position_constraint.rs
@@ -41,8 +41,8 @@ impl GenericPositionConstraint {
im2,
ii1,
ii2,
- local_com1: rb1.mass_properties.local_com,
- local_com2: rb2.mass_properties.local_com,
+ local_com1: rb1.local_mprops.local_com,
+ local_com2: rb2.local_mprops.local_com,
joint: *joint,
}
}
@@ -215,7 +215,7 @@ impl GenericPositionGroundConstraint {
position2: rb2.active_set_offset,
im2: rb2.effective_inv_mass,
ii2: rb2.effective_world_inv_inertia_sqrt.squared(),
- local_com2: rb2.mass_properties.local_com,
+ local_com2: rb2.local_mprops.local_com,
joint: *joint,
}
}
diff --git a/src/dynamics/solver/joint_constraint/revolute_position_constraint.rs b/src/dynamics/solver/joint_constraint/revolute_position_constraint.rs
index 1b3e23a..731d0e2 100644
--- a/src/dynamics/solver/joint_constraint/revolute_position_constraint.rs
+++ b/src/dynamics/solver/joint_constraint/revolute_position_constraint.rs
@@ -51,8 +51,8 @@ impl RevolutePositionConstraint {
ii1,
ii2,
ang_inv_lhs,
- local_com1: mprops1.mass_properties.local_com,
- local_com2: mprops2.mass_properties.local_com,
+ local_com1: mprops1.local_mprops.local_com,
+ local_com2: mprops2.local_mprops.local_com,
local_anchor1: cparams.local_anchor1,
local_anchor2: cparams.local_anchor2,
local_axis1: cparams.local_axis1,
@@ -183,7 +183,7 @@ impl RevolutePositionGroundConstraint {
local_anchor2,
im2: mprops2.effective_inv_mass,
ii2: mprops2.effective_world_inv_inertia_sqrt.squared(),
- local_com2: mprops2.mass_properties.local_com,
+ local_com2: mprops2.local_mprops.local_com,
axis1,
local_axis2,
position2: ids2.active_set_offset,
diff --git a/src/dynamics/solver/parallel_island_solver.rs b/src/dynamics/solver/parallel_island_solver.rs
index 9d565c1..e12e7af 100644
--- a/src/dynamics/solver/parallel_island_solver.rs
+++ b/src/dynamics/solver/parallel_island_solver.rs
@@ -392,7 +392,7 @@ impl ParallelIslandSolver {
let new_rb_vels = new_rb_vels.apply_damping(params.dt, rb_damping);
new_rb_pos.next_position =
- new_rb_vels.integrate(params.dt, &rb_pos.position, &rb_mprops.mass_properties.local_com);
+ new_rb_vels.integrate(params.dt, &rb_pos.position, &rb_mprops.local_mprops.local_com);
bodies.set_internal(handle.0, new_rb_vels);
bodies.set_internal(handle.0, new_rb_pos);