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:
@@ -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) {
|
||||
|
||||
Reference in New Issue
Block a user