From 4ac6456489ce60238031b176cac2f5b408aa5800 Mon Sep 17 00:00:00 2001 From: Dominic Masters Date: Fri, 20 Jun 2025 11:51:36 -0500 Subject: [PATCH] Physics cleanup a bit. --- src/dusk/physics/physics.c | 14 ++++---------- 1 file changed, 4 insertions(+), 10 deletions(-) diff --git a/src/dusk/physics/physics.c b/src/dusk/physics/physics.c index 2bd3a2d..81ec5e1 100644 --- a/src/dusk/physics/physics.c +++ b/src/dusk/physics/physics.c @@ -193,8 +193,6 @@ collisionresult_t physicsCheckCircleTriangle( fixed248_t closestX = FIXED248_ZERO; fixed248_t closestY = FIXED248_ZERO; - fixed248_t normalX = FIXED248_ZERO; - fixed248_t normalY = FIXED248_ZERO; fixed248_t minDistSq = FIXED248_MAX; for(uint8_t i = 0; i < 3; ++i) { @@ -217,8 +215,8 @@ collisionresult_t physicsCheckCircleTriangle( minDistSq = distSq; closestX = testX; closestY = testY; - normalX = dx; - normalY = dy; + result.normalX = dx; + result.normalY = dy; } } @@ -229,24 +227,20 @@ collisionresult_t physicsCheckCircleTriangle( FIXED248_ONE ); - fixed248_t nx = fx248Mulfx248(-normalX, invDist); - fixed248_t ny = fx248Mulfx248(-normalY, invDist); + result.normalX = fx248Mulfx248(-result.normalX, invDist); + result.normalY = fx248Mulfx248(-result.normalY, invDist); if(physicsIsPointInTriangle( circleX, circleY, vx[0], vy[0], vx[1], vy[1], vx[2], vy[2] )) { result.hit = true; result.depth = fx248Subfx248(circleR, dist); - result.normalX = nx; - result.normalY = ny; return result; } if(dist < circleR) { result.hit = true; result.depth = fx248Subfx248(circleR, dist); - result.normalX = nx; - result.normalY = ny; } return result;