summaryrefslogtreecommitdiffhomepage
path: root/src/models.c
diff options
context:
space:
mode:
authorRay <[email protected]>2019-05-09 16:04:52 +0200
committerGitHub <[email protected]>2019-05-09 16:04:52 +0200
commit5fd3f13cb673a9abb721e6d87919c1d9461a6670 (patch)
tree3b9dcace7733734c80d1ef5ceedbdb64423bb90a /src/models.c
parent97c8a28aaac8d2ac8689d18a619d32107d6b96f7 (diff)
parent1655463ba5d6016cff561bc868b29e069318f6bd (diff)
downloadraylib-5fd3f13cb673a9abb721e6d87919c1d9461a6670.tar.gz
raylib-5fd3f13cb673a9abb721e6d87919c1d9461a6670.zip
Merge pull request #832 from ProfJski/master
Remove sqrt() from CheckCollisionSpheres()
Diffstat (limited to 'src/models.c')
-rw-r--r--src/models.c12
1 files changed, 1 insertions, 11 deletions
diff --git a/src/models.c b/src/models.c
index c81dfe19..fc93c141 100644
--- a/src/models.c
+++ b/src/models.c
@@ -2472,17 +2472,7 @@ void DrawBoundingBox(BoundingBox box, Color color)
// Detect collision between two spheres
bool CheckCollisionSpheres(Vector3 centerA, float radiusA, Vector3 centerB, float radiusB)
{
- bool collision = false;
-
- float dx = centerA.x - centerB.x; // X distance between centers
- float dy = centerA.y - centerB.y; // Y distance between centers
- float dz = centerA.z - centerB.z; // Y distance between centers
-
- float distance = sqrtf(dx*dx + dy*dy + dz*dz); // Distance between centers
-
- if (distance <= (radiusA + radiusB)) collision = true;
-
- return collision;
+ return Vector3DotProduct(Vector3Subtract(centerB,centerA),Vector3Subtract(centerB,centerA))<=(radiusA+radiusB)*(radiusA+radiusB);
}
// Detect collision between two boxes