2
0
mirror of https://github.com/AxioDL/metaforce.git synced 2025-12-09 11:07:44 +00:00

General: Resolve several -Wextra-semi warnings

Remove redundant semicolons and also amends some macros to require
semicolon termination.
This commit is contained in:
Lioncash
2020-08-23 15:03:33 -04:00
parent 08a8dd7eeb
commit 4dc553e72a
38 changed files with 123 additions and 111 deletions

View File

@@ -466,91 +466,103 @@ static bool planeBoxOverlap(const zeus::CVector3f& normal, float d, const zeus::
/*======================== X-tests ========================*/
#define AXISTEST_X01(a, b, fa, fb) \
p0 = a * v0.y() - b * v0.z(); \
p2 = a * v2.y() - b * v2.z(); \
if (p0 < p2) { \
min = p0; \
max = p2; \
} else { \
min = p2; \
max = p0; \
} \
rad = fa * boxhalfsize.y() + fb * boxhalfsize.z(); \
if (min > rad || max < -rad) \
return false;
do { \
p0 = a * v0.y() - b * v0.z(); \
p2 = a * v2.y() - b * v2.z(); \
if (p0 < p2) { \
min = p0; \
max = p2; \
} else { \
min = p2; \
max = p0; \
} \
rad = fa * boxhalfsize.y() + fb * boxhalfsize.z(); \
if (min > rad || max < -rad) \
return false; \
} while (false)
#define AXISTEST_X2(a, b, fa, fb) \
p0 = a * v0.y() - b * v0.z(); \
p1 = a * v1.y() - b * v1.z(); \
if (p0 < p1) { \
min = p0; \
max = p1; \
} else { \
min = p1; \
max = p0; \
} \
rad = fa * boxhalfsize.y() + fb * boxhalfsize.z(); \
if (min > rad || max < -rad) \
return false;
do { \
p0 = a * v0.y() - b * v0.z(); \
p1 = a * v1.y() - b * v1.z(); \
if (p0 < p1) { \
min = p0; \
max = p1; \
} else { \
min = p1; \
max = p0; \
} \
rad = fa * boxhalfsize.y() + fb * boxhalfsize.z(); \
if (min > rad || max < -rad) \
return false; \
} while (false)
/*======================== Y-tests ========================*/
#define AXISTEST_Y02(a, b, fa, fb) \
p0 = -a * v0.x() + b * v0.z(); \
p2 = -a * v2.x() + b * v2.z(); \
if (p0 < p2) { \
min = p0; \
max = p2; \
} else { \
min = p2; \
max = p0; \
} \
rad = fa * boxhalfsize.x() + fb * boxhalfsize.z(); \
if (min > rad || max < -rad) \
return false;
do { \
p0 = -a * v0.x() + b * v0.z(); \
p2 = -a * v2.x() + b * v2.z(); \
if (p0 < p2) { \
min = p0; \
max = p2; \
} else { \
min = p2; \
max = p0; \
} \
rad = fa * boxhalfsize.x() + fb * boxhalfsize.z(); \
if (min > rad || max < -rad) \
return false; \
} while (false)
#define AXISTEST_Y1(a, b, fa, fb) \
p0 = -a * v0.x() + b * v0.z(); \
p1 = -a * v1.x() + b * v1.z(); \
if (p0 < p1) { \
min = p0; \
max = p1; \
} else { \
min = p1; \
max = p0; \
} \
rad = fa * boxhalfsize.x() + fb * boxhalfsize.z(); \
if (min > rad || max < -rad) \
return false;
do { \
p0 = -a * v0.x() + b * v0.z(); \
p1 = -a * v1.x() + b * v1.z(); \
if (p0 < p1) { \
min = p0; \
max = p1; \
} else { \
min = p1; \
max = p0; \
} \
rad = fa * boxhalfsize.x() + fb * boxhalfsize.z(); \
if (min > rad || max < -rad) \
return false; \
} while (false)
/*======================== Z-tests ========================*/
#define AXISTEST_Z12(a, b, fa, fb) \
p1 = a * v1.x() - b * v1.y(); \
p2 = a * v2.x() - b * v2.y(); \
if (p2 < p1) { \
min = p2; \
max = p1; \
} else { \
min = p1; \
max = p2; \
} \
rad = fa * boxhalfsize.x() + fb * boxhalfsize.y(); \
if (min > rad || max < -rad) \
return false;
do { \
p1 = a * v1.x() - b * v1.y(); \
p2 = a * v2.x() - b * v2.y(); \
if (p2 < p1) { \
min = p2; \
max = p1; \
} else { \
min = p1; \
max = p2; \
} \
rad = fa * boxhalfsize.x() + fb * boxhalfsize.y(); \
if (min > rad || max < -rad) \
return false; \
} while (false)
#define AXISTEST_Z0(a, b, fa, fb) \
p0 = a * v0.x() - b * v0.y(); \
p1 = a * v1.x() - b * v1.y(); \
if (p0 < p1) { \
min = p0; \
max = p1; \
} else { \
min = p1; \
max = p0; \
} \
rad = fa * boxhalfsize.x() + fb * boxhalfsize.y(); \
if (min > rad || max < -rad) \
return false;
do { \
p0 = a * v0.x() - b * v0.y(); \
p1 = a * v1.x() - b * v1.y(); \
if (p0 < p1) { \
min = p0; \
max = p1; \
} else { \
min = p1; \
max = p0; \
} \
rad = fa * boxhalfsize.x() + fb * boxhalfsize.y(); \
if (min > rad || max < -rad) \
return false; \
} while (false)
bool TriBoxOverlap(const zeus::CVector3f& boxcenter, const zeus::CVector3f& boxhalfsize,
const zeus::CVector3f& trivert0, const zeus::CVector3f& trivert1, const zeus::CVector3f& trivert2) {