From 71611d3e30ce2fddee20832db3c3e0c8b6ba0d07 Mon Sep 17 00:00:00 2001 From: Crozet Sébastien Date: Tue, 3 Nov 2020 15:08:06 +0100 Subject: Reset the rigid-bodies internal links properly. --- src/dynamics/rigid_body.rs | 10 +++++----- src/geometry/collider.rs | 4 ++-- src/geometry/contact_generator/pfm_pfm_contact_generator.rs | 2 +- 3 files changed, 8 insertions(+), 8 deletions(-) (limited to 'src') 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) { 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::::invalid_graph_index(); + self.proximity_graph_index = InteractionGraph::::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 { + fn clone_dyn(&self) -> Box { Box::new(self.clone()) } } -- cgit