From 01af6c09a786ec2d6475531a7dac873eeffa3a3e Mon Sep 17 00:00:00 2001 From: Crozet Sébastien Date: Mon, 2 Nov 2020 15:07:50 +0100 Subject: Fix simulation reaching different states when started from different snaphots. --- src/geometry/narrow_phase.rs | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'src/geometry/narrow_phase.rs') diff --git a/src/geometry/narrow_phase.rs b/src/geometry/narrow_phase.rs index c1bd411..e3e52e5 100644 --- a/src/geometry/narrow_phase.rs +++ b/src/geometry/narrow_phase.rs @@ -424,7 +424,11 @@ impl NarrowPhase { let (generator, workspace) = dispatcher.dispatch(co1.shape().shape_type(), co2.shape().shape_type()); pair.generator = Some(generator); - pair.generator_workspace = workspace; + + // Keep the workspace if one already exists. + if pair.generator_workspace.is_none() { + pair.generator_workspace = workspace; + } } let context = ContactGenerationContext { -- cgit