From d93e55867873f7ca562f9deddf224681ac3cc91c Mon Sep 17 00:00:00 2001 From: Rhys Lloyd Date: Mon, 24 Nov 2025 14:33:57 -0800 Subject: [PATCH] fast fail fn --- engine/physics/src/minimum_difference.rs | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/engine/physics/src/minimum_difference.rs b/engine/physics/src/minimum_difference.rs index 0334b6c4..25e368ff 100644 --- a/engine/physics/src/minimum_difference.rs +++ b/engine/physics/src/minimum_difference.rs @@ -474,7 +474,7 @@ pub fn contains_point(mesh:&MinkowskiMesh,point:Planar64Vec3)->bool{ true }, // fast_fail value - false + ||false ) } pub fn closest_fev(mesh:&MinkowskiMesh,point:Planar64Vec3)->Topology{ @@ -489,7 +489,7 @@ pub fn closest_fev(mesh:&MinkowskiMesh,point:Planar64Vec3)->Topology{ Topology{simplex} }, // fast_fail value is irrelevant and will never be returned! - Topology{simplex:Simplex::new_const()} + ||unreachable!() ) } @@ -503,7 +503,7 @@ fn minimum_difference( rel_pos:Planar64Vec3, on_exact:impl Fn(Simplex)->T, on_intersecting:impl Fn(Simplex)->T, - on_fast_fail:T, + on_fast_fail:impl FnOnce()->T, )->T{ // local initialAxis = queryQ() - queryP() // local new_point_p = queryP(initialAxis) @@ -530,7 +530,7 @@ fn minimum_difference( // if -direction:Dot(next_point) > (exitRadius + radiusP + radiusQ)*direction.magnitude then if ENABLE_FAST_FAIL&&direction.dot(mesh.vert(next_point)+rel_pos).is_negative(){ - return on_fast_fail; + return on_fast_fail(); } // push_front