diff options
| author | Crozet Sébastien <developer@crozet.re> | 2020-11-03 15:08:06 +0100 |
|---|---|---|
| committer | Crozet Sébastien <developer@crozet.re> | 2020-11-03 15:08:06 +0100 |
| commit | 71611d3e30ce2fddee20832db3c3e0c8b6ba0d07 (patch) | |
| tree | 1c743ed924b10ebd0eb0982e5c7d798235c12cee /src | |
| parent | 477411c6564d170c7287693c7f03976ece822c23 (diff) | |
| download | rapier-71611d3e30ce2fddee20832db3c3e0c8b6ba0d07.tar.gz rapier-71611d3e30ce2fddee20832db3c3e0c8b6ba0d07.tar.bz2 rapier-71611d3e30ce2fddee20832db3c3e0c8b6ba0d07.zip | |
Reset the rigid-bodies internal links properly.
Diffstat (limited to 'src')
| -rw-r--r-- | src/dynamics/rigid_body.rs | 10 | ||||
| -rw-r--r-- | src/geometry/collider.rs | 4 | ||||
| -rw-r--r-- | src/geometry/contact_generator/pfm_pfm_contact_generator.rs | 2 |
3 files changed, 8 insertions, 8 deletions
diff --git a/src/dynamics/rigid_body.rs b/src/dynamics/rigid_body.rs index f85ab89..d3bd8d7 100644 --- a/src/dynamics/rigid_body.rs +++ b/src/dynamics/rigid_body.rs @@ -84,11 +84,11 @@ impl RigidBody { pub(crate) fn reset_internal_references(&mut self) { self.colliders = Vec::new(); - self.joint_graph_index = RigidBodyGraphIndex::new(crate::INVALID_U32); - self.active_island_id = crate::INVALID_USIZE; - self.active_set_id = crate::INVALID_USIZE; - self.active_set_offset = crate::INVALID_USIZE; - self.active_set_timestamp = crate::INVALID_U32; + self.joint_graph_index = InteractionGraph::<()>::invalid_graph_index(); + self.active_island_id = 0; + self.active_set_id = 0; + self.active_set_offset = 0; + self.active_set_timestamp = 0; } pub(crate) fn integrate_accelerations(&mut self, dt: f32, gravity: Vector<f32>) { diff --git a/src/geometry/collider.rs b/src/geometry/collider.rs index f7f4efa..c2adc59 100644 --- a/src/geometry/collider.rs +++ b/src/geometry/collider.rs @@ -216,8 +216,8 @@ pub struct Collider { impl Collider { pub(crate) fn reset_internal_references(&mut self) { self.parent = RigidBodySet::invalid_handle(); - self.contact_graph_index = ColliderGraphIndex::new(crate::INVALID_U32); - self.proximity_graph_index = ColliderGraphIndex::new(crate::INVALID_U32); + self.contact_graph_index = InteractionGraph::<Contact>::invalid_graph_index(); + self.proximity_graph_index = InteractionGraph::<Proximity>::invalid_graph_index(); self.proxy_index = crate::INVALID_USIZE; } diff --git a/src/geometry/contact_generator/pfm_pfm_contact_generator.rs b/src/geometry/contact_generator/pfm_pfm_contact_generator.rs index a9906cb..5bc213e 100644 --- a/src/geometry/contact_generator/pfm_pfm_contact_generator.rs +++ b/src/geometry/contact_generator/pfm_pfm_contact_generator.rs @@ -138,7 +138,7 @@ impl MaybeSerializableData for PfmPfmContactManifoldGeneratorWorkspace { )) } - fn clone_dyn(&self) -> Box<MaybeSerializableData> { + fn clone_dyn(&self) -> Box<dyn MaybeSerializableData> { Box::new(self.clone()) } } |
