diff options
| author | Ray <[email protected]> | 2019-05-09 16:04:52 +0200 |
|---|---|---|
| committer | GitHub <[email protected]> | 2019-05-09 16:04:52 +0200 |
| commit | 5fd3f13cb673a9abb721e6d87919c1d9461a6670 (patch) | |
| tree | 3b9dcace7733734c80d1ef5ceedbdb64423bb90a /src | |
| parent | 97c8a28aaac8d2ac8689d18a619d32107d6b96f7 (diff) | |
| parent | 1655463ba5d6016cff561bc868b29e069318f6bd (diff) | |
| download | raylib-5fd3f13cb673a9abb721e6d87919c1d9461a6670.tar.gz raylib-5fd3f13cb673a9abb721e6d87919c1d9461a6670.zip | |
Merge pull request #832 from ProfJski/master
Remove sqrt() from CheckCollisionSpheres()
Diffstat (limited to 'src')
| -rw-r--r-- | src/models.c | 12 |
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 |
