[Scummvm-git-logs] scummvm master -> 3f4de6760e0d30b614349c0a2675dc917ff3d2c8
bluegr
noreply at scummvm.org
Sun Feb 15 20:41:32 UTC 2026
This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://api.github.com/repos/scummvm/scummvm .
Summary:
3f4de6760e JANITORIAL: HPL1: use ARRAYSIZE macro
Commit: 3f4de6760e0d30b614349c0a2675dc917ff3d2c8
https://github.com/scummvm/scummvm/commit/3f4de6760e0d30b614349c0a2675dc917ff3d2c8
Author: Michael Kuerbis (michael_kuerbis at web.de)
Date: 2026-02-15T22:41:29+02:00
Commit Message:
JANITORIAL: HPL1: use ARRAYSIZE macro
Changed paths:
engines/hpl1/engine/libraries/newton/core/dgAABBPolygonSoup.cpp
engines/hpl1/engine/libraries/newton/core/dgPolyhedra.cpp
engines/hpl1/engine/libraries/newton/physics/dgBroadPhaseCollision.cpp
engines/hpl1/engine/libraries/newton/physics/dgCollision.h
engines/hpl1/engine/libraries/newton/physics/dgCollisionBVH.cpp
engines/hpl1/engine/libraries/newton/physics/dgCollisionCompoundBreakable.cpp
engines/hpl1/engine/libraries/newton/physics/dgCollisionConvex.cpp
engines/hpl1/engine/libraries/newton/physics/dgCollisionConvexHull.cpp
engines/hpl1/engine/libraries/newton/physics/dgCollisionMesh.cpp
engines/hpl1/engine/libraries/newton/physics/dgConstraint.h
engines/hpl1/engine/libraries/newton/physics/dgMeshEffect.cpp
engines/hpl1/engine/libraries/newton/physics/dgMeshEffect2.cpp
engines/hpl1/engine/libraries/newton/physics/dgMeshEffectSolidTree.cpp
engines/hpl1/engine/libraries/newton/physics/dgMinkowskiConv.cpp
diff --git a/engines/hpl1/engine/libraries/newton/core/dgAABBPolygonSoup.cpp b/engines/hpl1/engine/libraries/newton/core/dgAABBPolygonSoup.cpp
index 39b20cfb2c5..7ff4320ee27 100644
--- a/engines/hpl1/engine/libraries/newton/core/dgAABBPolygonSoup.cpp
+++ b/engines/hpl1/engine/libraries/newton/core/dgAABBPolygonSoup.cpp
@@ -1510,7 +1510,7 @@ dgIntersectStatus dgAABBPolygonSoup::CalculateAllFaceEdgeNormals(void *context,
adjacentFaces.m_normal = dgPlane(n, -(n % p));
}
- NEWTON_ASSERT(indexCount < dgInt32(sizeof(adjacentFaces.m_edgeMap) / sizeof(adjacentFaces.m_edgeMap[0])));
+ NEWTON_ASSERT(indexCount < dgInt32(ARRAYSIZE(adjacentFaces.m_edgeMap)));
dgInt32 edgeIndex = indexCount - 1;
dgInt32 i0 = indexArray[indexCount - 1];
diff --git a/engines/hpl1/engine/libraries/newton/core/dgPolyhedra.cpp b/engines/hpl1/engine/libraries/newton/core/dgPolyhedra.cpp
index a61ae4869d8..6278f382638 100644
--- a/engines/hpl1/engine/libraries/newton/core/dgPolyhedra.cpp
+++ b/engines/hpl1/engine/libraries/newton/core/dgPolyhedra.cpp
@@ -2096,7 +2096,7 @@ bool dgPolyhedra::GetConectedSurface(dgPolyhedra &polyhedra) const {
faceIndex[count] = ptr->m_incidentVertex;
faceDataIndex[count] = dgInt64(ptr->m_userData);
count++;
- NEWTON_ASSERT(count < dgInt32(sizeof(faceIndex) / sizeof(faceIndex[0])));
+ NEWTON_ASSERT(count < dgInt32(ARRAYSIZE(faceIndex)));
if ((ptr->m_twin->m_incidentFace > 0) && (ptr->m_twin->m_mark != mark)) {
stack[index] = ptr->m_twin;
@@ -2889,11 +2889,11 @@ dgEdge *dgPolyhedra::TriangulateFace(dgEdge *face, const dgFloat64 *const pool,
do {
perimeter[perimeterCount] = ptr;
perimeterCount++;
- NEWTON_ASSERT(perimeterCount < dgInt32(sizeof(perimeter) / sizeof(perimeter[0])));
+ NEWTON_ASSERT(perimeterCount < dgInt32(ARRAYSIZE(perimeter)));
ptr = ptr->m_next;
} while (ptr != face);
perimeter[perimeterCount] = face;
- NEWTON_ASSERT((perimeterCount + 1) < dgInt32(sizeof(perimeter) / sizeof(perimeter[0])));
+ NEWTON_ASSERT((perimeterCount + 1) < dgInt32(ARRAYSIZE(perimeter)));
#endif
dgBigVector normal(
@@ -2995,7 +2995,7 @@ void dgPolyhedra::MarkAdjacentCoplanarFaces(dgPolyhedra &polyhedraOut,
ptr->m_mark = faceMark;
faceIndex[faceIndexCount] = ptr->m_incidentVertex;
faceIndexCount++;
- NEWTON_ASSERT(faceIndexCount < dgInt32(sizeof(faceIndex) / sizeof(faceIndex[0])));
+ NEWTON_ASSERT(faceIndexCount < dgInt32(ARRAYSIZE(faceIndex)));
ptr = ptr->m_next;
} while (ptr != face);
}
@@ -3009,7 +3009,7 @@ void dgPolyhedra::MarkAdjacentCoplanarFaces(dgPolyhedra &polyhedraOut,
dgEdge *const stackFace = stack[index];
deleteEdge[deleteCount] = stackFace;
deleteCount++;
- NEWTON_ASSERT(deleteCount < dgInt32(sizeof(deleteEdge) / sizeof(deleteEdge[0])));
+ NEWTON_ASSERT(deleteCount < dgInt32(ARRAYSIZE(deleteEdge)));
NEWTON_ASSERT(stackFace->m_next->m_next->m_next == stackFace);
dgEdge *edge = stackFace;
@@ -3023,7 +3023,7 @@ void dgPolyhedra::MarkAdjacentCoplanarFaces(dgPolyhedra &polyhedraOut,
ptr1->m_mark = faceMark;
faceIndex[faceIndexCount] = ptr1->m_incidentVertex;
NEWTON_ASSERT(
- faceIndexCount < dgInt32(sizeof(faceIndex) / sizeof(faceIndex[0])));
+ faceIndexCount < dgInt32(ARRAYSIZE(faceIndex)));
faceIndexCount++;
ptr1 = ptr1->m_next;
} while (ptr1 != ptr);
@@ -3034,7 +3034,7 @@ void dgPolyhedra::MarkAdjacentCoplanarFaces(dgPolyhedra &polyhedraOut,
deleteEdge[deleteCount] = ptr;
deleteCount++;
NEWTON_ASSERT(
- deleteCount < dgInt32(sizeof(deleteEdge) / sizeof(deleteEdge[0])));
+ deleteCount < dgInt32(ARRAYSIZE(deleteEdge)));
} else {
//normal1 = normal1.Scale (dgFloat64 (1.0f) / sqrt (dot));
dgBigVector testNormal(
@@ -3060,7 +3060,7 @@ void dgPolyhedra::MarkAdjacentCoplanarFaces(dgPolyhedra &polyhedraOut,
;
stack[index] = ptr;
index++;
- NEWTON_ASSERT(index < dgInt32(sizeof(stack) / sizeof(stack[0])));
+ NEWTON_ASSERT(index < dgInt32(ARRAYSIZE(stack)));
}
}
}
@@ -3240,14 +3240,14 @@ void dgPolyhedra::RefineTriangulation(const dgFloat64 *const vertex,
do {
edgePerimeters[perimeterCount] = ptr->m_twin;
perimeterCount++;
- NEWTON_ASSERT(perimeterCount < dgInt32(sizeof(edgePerimeters) / sizeof(edgePerimeters[0])));
+ NEWTON_ASSERT(perimeterCount < dgInt32(ARRAYSIZE(edgePerimeters)));
ptr = ptr->m_prev;
} while (ptr != edge);
break;
}
}
NEWTON_ASSERT(perimeterCount);
- NEWTON_ASSERT(perimeterCount < dgInt32(sizeof(edgePerimeters) / sizeof(edgePerimeters[0])));
+ NEWTON_ASSERT(perimeterCount < dgInt32(ARRAYSIZE(edgePerimeters)));
edgePerimeters[perimeterCount] = edgePerimeters[0];
dgBigVector normal(FaceNormal(edgePerimeters[0], vertex, dgInt32(stride * sizeof(dgFloat64))));
@@ -3293,7 +3293,7 @@ void dgPolyhedra::OptimizeTriangulation(const dgFloat64 *const vertex,
do {
polygon[vertexCount] = ptr->m_incidentVertex;
vertexCount++;
- NEWTON_ASSERT(vertexCount < dgInt32(sizeof(polygon) / sizeof(polygon[0])));
+ NEWTON_ASSERT(vertexCount < dgInt32(ARRAYSIZE(polygon)));
ptr->m_mark = mark;
ptr = ptr->m_next;
} while (ptr != edgeFF);
@@ -3417,7 +3417,7 @@ static void RemoveColinearVertices(dgPolyhedra &flatFace,
} while (ptr != edge);
edgePerimeters[perimeterCount] = edge;
perimeterCount++;
- NEWTON_ASSERT(perimeterCount < dgInt32(sizeof(edgePerimeters) / sizeof(edgePerimeters[0])));
+ NEWTON_ASSERT(perimeterCount < dgInt32(ARRAYSIZE(edgePerimeters)));
}
}
@@ -3578,7 +3578,7 @@ void dgPolyhedra::ConvexPartition(const dgFloat64 *const vertex,
flatFace.RefineTriangulation(vertex, stride);
RemoveColinearVertices(flatFace, vertex, stride);
- dgInt32 diagonalCount = GetInteriorDiagonals(flatFace, diagonalsPool, sizeof(diagonalsPool) / sizeof(diagonalsPool[0]));
+ dgInt32 diagonalCount = GetInteriorDiagonals(flatFace, diagonalsPool, ARRAYSIZE(diagonalsPool));
if (diagonalCount) {
edge = &flatFace.GetRoot()->GetInfo();
if (edge->m_incidentFace < 0) {
@@ -3645,7 +3645,7 @@ void dgPolyhedra::ConvexPartition(const dgFloat64 *const vertex,
do {
polygon[count] = ptr->m_incidentVertex;
count++;
- NEWTON_ASSERT(count < dgInt32(sizeof(polygon) / sizeof(polygon[0])));
+ NEWTON_ASSERT(count < dgInt32(ARRAYSIZE(polygon)));
ptr = ptr->m_next;
} while (ptr != edge);
@@ -3689,7 +3689,7 @@ void dgPolyhedra::ConvexPartition(const dgFloat64 *const vertex,
do {
polygon[diagonalCountTemp] = ptr->m_incidentVertex;
diagonalCountTemp++;
- NEWTON_ASSERT(diagonalCountTemp < dgInt32(sizeof(polygon) / sizeof(polygon[0])));
+ NEWTON_ASSERT(diagonalCountTemp < dgInt32(ARRAYSIZE(polygon)));
ptr->m_mark = mark;
ptr = ptr->m_next;
} while (ptr != edgeFLF);
diff --git a/engines/hpl1/engine/libraries/newton/physics/dgBroadPhaseCollision.cpp b/engines/hpl1/engine/libraries/newton/physics/dgBroadPhaseCollision.cpp
index 84b0b16ddcf..03f6c4cb51c 100644
--- a/engines/hpl1/engine/libraries/newton/physics/dgBroadPhaseCollision.cpp
+++ b/engines/hpl1/engine/libraries/newton/physics/dgBroadPhaseCollision.cpp
@@ -1323,7 +1323,7 @@ dgUnsigned32 dgBroadPhaseCollision::UpdateContactsBroadPhaseBegin(
cellArray[cellsPairsCount].m_cell_A = cell1;
cellArray[cellsPairsCount].m_cell_B = cell0;
cellsPairsCount++;
- if (cellsPairsCount >= dgInt32(sizeof(cellArray) / sizeof(cellArray[0]))) {
+ if (cellsPairsCount >= dgInt32(ARRAYSIZE(cellArray))) {
if (threadCounts > 1) {
me->m_threadsManager.CalculateChunkSizes(cellsPairsCount,
chunkSizes);
@@ -1366,7 +1366,7 @@ dgUnsigned32 dgBroadPhaseCollision::UpdateContactsBroadPhaseBegin(
cellArray[cellsPairsCount].m_cell_A = &cell;
cellArray[cellsPairsCount].m_cell_B = NULL;
cellsPairsCount++;
- if (cellsPairsCount >= dgInt32(sizeof(cellArray) / sizeof(cellArray[0]))) {
+ if (cellsPairsCount >= dgInt32(ARRAYSIZE(cellArray))) {
if (threadCounts > 1) {
me->m_threadsManager.CalculateChunkSizes(cellsPairsCount,
diff --git a/engines/hpl1/engine/libraries/newton/physics/dgCollision.h b/engines/hpl1/engine/libraries/newton/physics/dgCollision.h
index e0696524e56..088d54831ac 100644
--- a/engines/hpl1/engine/libraries/newton/physics/dgCollision.h
+++ b/engines/hpl1/engine/libraries/newton/physics/dgCollision.h
@@ -168,7 +168,7 @@ typedef void(dgApi *OnDebugCollisionMeshCallback)(void *userData, int vertexCoun
class dgCollisionBoundPlaneCache {
public:
dgCollisionBoundPlaneCache() {
- for (unsigned i = 0; i < sizeof(m_planes) / sizeof(m_planes[0]); i++)
+ for (unsigned i = 0; i < ARRAYSIZE(m_planes); i++)
m_planes[i] = dgPlane(0.0, 0.0, 0.0, 0.0);
}
dgPlane m_planes[2];
diff --git a/engines/hpl1/engine/libraries/newton/physics/dgCollisionBVH.cpp b/engines/hpl1/engine/libraries/newton/physics/dgCollisionBVH.cpp
index e9d4cb1cd20..cf96ce2f4a8 100644
--- a/engines/hpl1/engine/libraries/newton/physics/dgCollisionBVH.cpp
+++ b/engines/hpl1/engine/libraries/newton/physics/dgCollisionBVH.cpp
@@ -67,7 +67,7 @@ void dgCollisionBVH::AddFace(dgInt32 vertexCount,
dgInt32 indexList[256];
faceArray = vertexCount;
- NEWTON_ASSERT(vertexCount < dgInt32(sizeof(indexList) / sizeof(indexList[0])));
+ NEWTON_ASSERT(vertexCount < dgInt32(ARRAYSIZE(indexList)));
for (dgInt32 i = 0; i < vertexCount; i++) {
indexList[i] = i;
}
diff --git a/engines/hpl1/engine/libraries/newton/physics/dgCollisionCompoundBreakable.cpp b/engines/hpl1/engine/libraries/newton/physics/dgCollisionCompoundBreakable.cpp
index 34ed4f5911f..7a91a10335e 100644
--- a/engines/hpl1/engine/libraries/newton/physics/dgCollisionCompoundBreakable.cpp
+++ b/engines/hpl1/engine/libraries/newton/physics/dgCollisionCompoundBreakable.cpp
@@ -1293,7 +1293,7 @@ void dgCollisionCompoundBreakable::SetAnchoredParts(dgInt32 count,
rootNode = queue[trealingIndex];
trealingIndex++;
- if (trealingIndex >= dgInt32(sizeof(queue) / sizeof(queue[0]))) {
+ if (trealingIndex >= dgInt32(ARRAYSIZE(queue))) {
trealingIndex = 0;
}
@@ -1309,7 +1309,7 @@ void dgCollisionCompoundBreakable::SetAnchoredParts(dgInt32 count,
cost;
queue[leadingIndex] = childNode;
leadingIndex++;
- if (leadingIndex >= dgInt32(sizeof(queue) / sizeof(queue[0]))) {
+ if (leadingIndex >= dgInt32(ARRAYSIZE(queue))) {
leadingIndex = 0;
}
NEWTON_ASSERT(leadingIndex != trealingIndex);
diff --git a/engines/hpl1/engine/libraries/newton/physics/dgCollisionConvex.cpp b/engines/hpl1/engine/libraries/newton/physics/dgCollisionConvex.cpp
index 0b73f800446..94df586ed8c 100644
--- a/engines/hpl1/engine/libraries/newton/physics/dgCollisionConvex.cpp
+++ b/engines/hpl1/engine/libraries/newton/physics/dgCollisionConvex.cpp
@@ -99,8 +99,7 @@ dgCollisionConvex::dgCollisionConvex(dgMemoryAllocator *const allocator,
m_boxMaxRadius = dgFloat32(0.0f);
m_isTriggerVolume = false;
- for (dgUnsigned32 i = 0;
- i < sizeof(m_supportVertexStarCuadrant) / sizeof(m_supportVertexStarCuadrant[0]); i++) {
+ for (dgUnsigned32 i = 0; i < ARRAYSIZE(m_supportVertexStarCuadrant); i++) {
m_supportVertexStarCuadrant[i] = NULL;
}
}
@@ -127,8 +126,7 @@ dgCollisionConvex::dgCollisionConvex(dgWorld *const world,
deserialization(userData, &isTrigger, sizeof(dgInt32));
m_isTriggerVolume = dgUnsigned32(isTrigger ? true : false);
- for (dgUnsigned32 i = 0;
- i < sizeof(m_supportVertexStarCuadrant) / sizeof(m_supportVertexStarCuadrant[0]); i++) {
+ for (dgUnsigned32 i = 0; i < ARRAYSIZE(m_supportVertexStarCuadrant); i++) {
m_supportVertexStarCuadrant[i] = NULL;
}
}
@@ -175,7 +173,7 @@ void dgCollisionConvex::SetVolumeAndCG() {
edgeMarks[dgInt32(edge - m_simplex)] = '1';
faceVertex[count] = m_vertex[edge->m_vertex];
count++;
- NEWTON_ASSERT(count < dgInt32(sizeof(faceVertex) / sizeof(faceVertex[0])));
+ NEWTON_ASSERT(count < dgInt32(ARRAYSIZE(faceVertex)));
edge = edge->m_next;
} while (edge != face);
@@ -192,7 +190,7 @@ void dgCollisionConvex::SetVolumeAndCG() {
m_simplexVolume = m_volume.m_w;
// set the table for quick calculation of support vertex
- dgInt32 count = sizeof(m_supportVertexStarCuadrant) / sizeof(m_supportVertexStarCuadrant[0]);
+ dgInt32 count = ARRAYSIZE(m_supportVertexStarCuadrant);
for (dgInt32 i = 0; i < count; i++) {
m_supportVertexStarCuadrant[i] = GetSupportEdge(m_multiResDir[i]);
}
@@ -770,7 +768,7 @@ dgVector dgCollisionConvex::CalculateVolumeIntegral(const dgPlane &plane) const
m_vertex[edge->m_vertex] - m_vertex[edge->m_prev->m_vertex]);
faceVertex[count] = m_vertex[edge->m_prev->m_vertex] - dp.Scale(size0 / (plane % dp));
count++;
- NEWTON_ASSERT(count < dgInt32(sizeof(faceVertex) / sizeof(faceVertex[0])));
+ NEWTON_ASSERT(count < dgInt32(ARRAYSIZE(faceVertex)));
}
if (!capEdge) {
@@ -858,13 +856,13 @@ dgVector dgCollisionConvex::SupportVertex(const dgVector &direction) const {
index = edge->m_vertex;
side0 = m_vertex[index] % dir;
- cache[index & (sizeof(cache) / sizeof(cache[0]) - 1)] = dgInt16(index);
+ cache[index & (ARRAYSIZE(cache) - 1)] = dgInt16(index);
dgConvexSimplexEdge *ptr = edge;
dgInt32 maxCount = 128;
do {
dgInt32 index1 = ptr->m_twin->m_vertex;
- if (cache[index1 & (sizeof(cache) / sizeof(cache[0]) - 1)] != index1) {
- cache[index1 & (sizeof(cache) / sizeof(cache[0]) - 1)] = dgInt16(index1);
+ if (cache[index1 & (ARRAYSIZE(cache) - 1)] != index1) {
+ cache[index1 & (ARRAYSIZE(cache) - 1)] = dgInt16(index1);
dgFloat32 side1 = m_vertex[index1] % dir;
if (side1 > side0) {
index = index1;
@@ -916,14 +914,14 @@ dgVector dgCollisionConvex::SupportVertexSimd(const dgVector &direction) const {
dgInt16 cache[16];
memset(cache, -1, sizeof(cache));
- cache[index & (sizeof(cache) / sizeof(cache[0]) - 1)] = dgInt16(index);
+ cache[index & (ARRAYSIZE(cache) - 1)] = dgInt16(index);
dgConvexSimplexEdge *ptr = edge;
dgInt32 maxCount = 128;
do {
dgInt32 index1 = ptr->m_twin->m_vertex;
- if (cache[index1 & (sizeof(cache) / sizeof(cache[0]) - 1)] != index1) {
- cache[index1 & (sizeof(cache) / sizeof(cache[0]) - 1)] = dgInt16(index1);
+ if (cache[index1 & (ARRAYSIZE(cache) - 1)] != index1) {
+ cache[index1 & (ARRAYSIZE(cache) - 1)] = dgInt16(index1);
NEWTON_ASSERT(m_vertex[index1].m_w == dgFloat32(1.0f));
simd_type side1 = simd_mul_v(*(simd_type *)&m_vertex[index1], dir);
side1 = simd_add_s(simd_add_v(side1, simd_move_hl_v(side1, side1)), simd_permut_v(side1, side1, PURMUT_MASK(3, 3, 3, 1)));
@@ -1001,7 +999,7 @@ dgInt32 dgCollisionConvex::SimplifyClipPolygon(dgInt32 count,
dgInt8 buffer[8 * DG_MAX_VERTEX_CLIP_FACE * (sizeof(dgInt32) + sizeof(dgFloat32))];
for (uint i = 0; i < ARRAYSIZE(buffer); i++) buffer[i] = 0;
- NEWTON_ASSERT(count < dgInt32(sizeof(mark) / sizeof(mark[0])));
+ NEWTON_ASSERT(count < dgInt32(ARRAYSIZE(mark)));
dgUpHeap<dgInt32, dgFloat32> sortHeap(buffer, sizeof(buffer));
while (count > DG_MAX_VERTEX_CLIP_FACE) {
diff --git a/engines/hpl1/engine/libraries/newton/physics/dgCollisionConvexHull.cpp b/engines/hpl1/engine/libraries/newton/physics/dgCollisionConvexHull.cpp
index 801b9b5d0eb..11166c0efc7 100644
--- a/engines/hpl1/engine/libraries/newton/physics/dgCollisionConvexHull.cpp
+++ b/engines/hpl1/engine/libraries/newton/physics/dgCollisionConvexHull.cpp
@@ -95,7 +95,7 @@ dgCollisionConvexHull::dgCollisionConvexHull(dgMemoryAllocator *const allocator,
planesArray[planeCount].m_index = i;
planesArray[planeCount].m_face = face;
planeCount++;
- NEWTON_ASSERT(planeCount < dgInt32(sizeof(planesArray) / sizeof(planesArray[0])));
+ NEWTON_ASSERT(planeCount < dgInt32(ARRAYSIZE(planesArray)));
}
}
}
diff --git a/engines/hpl1/engine/libraries/newton/physics/dgCollisionMesh.cpp b/engines/hpl1/engine/libraries/newton/physics/dgCollisionMesh.cpp
index 6a5a31f769a..3cafc2ab7b7 100644
--- a/engines/hpl1/engine/libraries/newton/physics/dgCollisionMesh.cpp
+++ b/engines/hpl1/engine/libraries/newton/physics/dgCollisionMesh.cpp
@@ -42,7 +42,7 @@ dgCollisionMesh::dgCollisionConvexPolygon::dgCollisionConvexPolygon(dgMemoryAllo
m_isEdgeIntersection = false;
m_rtti |= dgCollisionConvexPolygon_RTTI;
- for (unsigned i = 0; i < (sizeof(m_localPoly) / sizeof(m_localPoly[0])); i++)
+ for (unsigned i = 0; i < (ARRAYSIZE(m_localPoly)); i++)
m_localPoly[i] = dgVector(dgFloat32(0.0f), dgFloat32(0.0f), dgFloat32(0.0f), dgFloat32(0.0f));
m_normal = dgVector(dgFloat32(0.0f), dgFloat32(0.0f), dgFloat32(0.0f), dgFloat32(0.0f));
// m_aabbP0 = dgVector (dgFloat32 (0.0f), dgFloat32 (0.0f), dgFloat32 (0.0f), dgFloat32 (0.0f));
@@ -248,7 +248,7 @@ dgInt32 dgCollisionMesh::dgCollisionConvexPolygon::QuickTestContinue(const dgCol
dgInt32 ret;
dgFloat32 val1;
- NEWTON_ASSERT(m_count < dgInt32(sizeof(m_localPoly) / sizeof(m_localPoly[0])));
+ NEWTON_ASSERT(m_count < dgInt32(ARRAYSIZE(m_localPoly)));
m_localPoly[0] = dgVector(&m_vertex[m_index[0] * m_stride]);
m_localPoly[1] = dgVector(&m_vertex[m_index[1] * m_stride]);
m_localPoly[2] = dgVector(&m_vertex[m_index[2] * m_stride]);
@@ -278,7 +278,7 @@ dgInt32 dgCollisionMesh::dgCollisionConvexPolygon::QuickTestSimd(const dgCollisi
simd_type normal1;
dgVector rotatedNormal;
- NEWTON_ASSERT(m_count < dgInt32(sizeof(m_localPoly) / sizeof(m_localPoly[0])));
+ NEWTON_ASSERT(m_count < dgInt32(ARRAYSIZE(m_localPoly)));
m_localPoly[0] = dgVector(&m_vertex[m_index[0] * m_stride]);
m_localPoly[1] = dgVector(&m_vertex[m_index[1] * m_stride]);
@@ -328,7 +328,7 @@ dgInt32 dgCollisionMesh::dgCollisionConvexPolygon::QuickTestSimd(const dgCollisi
}
dgInt32 dgCollisionMesh::dgCollisionConvexPolygon::QuickTest(const dgCollisionConvex *const hull, const dgMatrix &matrix) {
- NEWTON_ASSERT(m_count < dgInt32(sizeof(m_localPoly) / sizeof(m_localPoly[0])));
+ NEWTON_ASSERT(m_count < dgInt32(ARRAYSIZE(m_localPoly)));
m_localPoly[0] = dgVector(&m_vertex[m_index[0] * m_stride]);
m_localPoly[1] = dgVector(&m_vertex[m_index[1] * m_stride]);
@@ -458,8 +458,8 @@ void dgCollisionMesh::dgCollisionConvexPolygon::BeamClippingSimd(const dgCollisi
void dgCollisionMesh::dgCollisionConvexPolygon::BeamClipping(const dgCollisionConvex *const hull, const dgMatrix &matrix, dgFloat32 dist) {
dgPlane planes[4];
- dgVector points[sizeof(m_localPoly) / sizeof(m_localPoly[0]) + 8];
- DG_CLIPPED_FACE_EDGE clippedFace[sizeof(m_localPoly) / sizeof(m_localPoly[0]) + 8];
+ dgVector points[ARRAYSIZE(m_localPoly) + 8];
+ DG_CLIPPED_FACE_EDGE clippedFace[ARRAYSIZE(m_localPoly) + 8];
dgVector origin(matrix.UnrotateVector(matrix.m_posit.Scale(dgFloat32(-1.0f))));
dgVector dir(m_localPoly[1] - m_localPoly[0]);
diff --git a/engines/hpl1/engine/libraries/newton/physics/dgConstraint.h b/engines/hpl1/engine/libraries/newton/physics/dgConstraint.h
index 6ba5752a106..3b50de16094 100644
--- a/engines/hpl1/engine/libraries/newton/physics/dgConstraint.h
+++ b/engines/hpl1/engine/libraries/newton/physics/dgConstraint.h
@@ -22,7 +22,7 @@
#if !defined(AFX_DGCONSTRAINT_H__F9EC24E0_6E0F_4CD5_909E_A5F5E1AC7C0B__INCLUDED_)
#define AFX_DGCONSTRAINT_H__F9EC24E0_6E0F_4CD5_909E_A5F5E1AC7C0B__INCLUDED_
-#define ARRAYSIZE(x) ((int)(sizeof(x) / sizeof(x[0])))
+#include "common/util.h"
#include "dgBodyMasterList.h"
diff --git a/engines/hpl1/engine/libraries/newton/physics/dgMeshEffect.cpp b/engines/hpl1/engine/libraries/newton/physics/dgMeshEffect.cpp
index f852cfca46e..17900644faf 100644
--- a/engines/hpl1/engine/libraries/newton/physics/dgMeshEffect.cpp
+++ b/engines/hpl1/engine/libraries/newton/physics/dgMeshEffect.cpp
@@ -1148,7 +1148,7 @@ void dgMeshEffect::AddPolygon(dgInt32 count, const dgFloat64 *const vertexList,
if (count > 3) {
dgPolyhedra polygon(GetAllocator());
dgInt32 indexList[256];
- NEWTON_ASSERT(count < dgInt32(sizeof(indexList) / sizeof(indexList[0])));
+ NEWTON_ASSERT(count < dgInt32(ARRAYSIZE(indexList)));
for (dgInt32 i = 0; i < count; i++) {
indexList[i] = i;
}
@@ -1222,7 +1222,7 @@ void dgMeshEffect::AddPolygon(dgInt32 count, const dgFloat64 *const vertexList,
void dgMeshEffect::AddPolygon(dgInt32 count, const dgFloat32 *const vertexList,
dgInt32 strideIndBytes, dgInt32 material) {
dgVertexAtribute points[256];
- NEWTON_ASSERT(count < dgInt32(sizeof(points) / sizeof(points[0])));
+ NEWTON_ASSERT(count < dgInt32(ARRAYSIZE(points)));
dgInt32 stride = strideIndBytes / sizeof(dgFloat32);
for (dgInt32 i = 0; i < count; i++) {
@@ -1405,7 +1405,7 @@ void dgMeshEffect::BuildFromVertexListIndexList(
dgInt32 index[256];
dgInt64 userdata[256];
dgInt32 count = faceIndexCount[j];
- NEWTON_ASSERT(count < dgInt32(sizeof(index) / sizeof(index[0])));
+ NEWTON_ASSERT(count < dgInt32(ARRAYSIZE(index)));
for (dgInt32 i = 0; i < count; i++) {
index[i] = vertexIndex[totalIndexCount + i];
// dgTrace (("%d ", index[i]));
@@ -1580,7 +1580,7 @@ void dgMeshEffect::BuildFromVertexListIndexList(
dgInt64 userdata[256];
int indexCount = faceIndexCount[j];
- NEWTON_ASSERT(indexCount < dgInt32 (sizeof (index) / sizeof (index[0])));
+ NEWTON_ASSERT(indexCount < dgInt32 (ARRAYSIZE(index)));
if (faceMark[j])
{
@@ -2764,7 +2764,7 @@ void dgMeshEffect::MergeFaces(const dgMeshEffect *const source) {
ptr->m_mark = mark;
face[count] = source->m_attib[ptr->m_userData];
count++;
- NEWTON_ASSERT(count < dgInt32(sizeof(face) / sizeof(face[0])));
+ NEWTON_ASSERT(count < dgInt32(ARRAYSIZE(face)));
ptr = ptr->m_next;
} while (ptr != edge);
AddPolygon(count, &face[0].m_vertex.m_x, sizeof(dgVertexAtribute),
@@ -2790,7 +2790,7 @@ void dgMeshEffect::ReverseMergeFaces(dgMeshEffect *const source) {
face[count].m_normal_y *= dgFloat32(-1.0f);
face[count].m_normal_z *= dgFloat32(-1.0f);
count++;
- NEWTON_ASSERT(count < dgInt32(sizeof(face) / sizeof(face[0])));
+ NEWTON_ASSERT(count < dgInt32(ARRAYSIZE(face)));
ptr = ptr->m_prev;
} while (ptr != edge);
AddPolygon(count, &face[0].m_vertex.m_x, sizeof(dgVertexAtribute),
@@ -3205,7 +3205,7 @@ bool dgMeshEffect::CheckIntersection(
stackPool[stack] = root->m_front;
faceOnStack[stack] = frontFace;
stack ++;
- NEWTON_ASSERT (stack < sizeof (stackPool) / sizeof (stackPool[0]));
+ NEWTON_ASSERT (stack < ARRAYSIZE(stackPool));
} else {
frontFace->Release();
frontCount ++;
@@ -3218,7 +3218,7 @@ bool dgMeshEffect::CheckIntersection(
stackPool[stack] = root->m_back;
faceOnStack[stack] = backFace;
stack ++;
- NEWTON_ASSERT (stack < sizeof (stackPool) / sizeof (stackPool[0]));
+ NEWTON_ASSERT (stack < ARRAYSIZE(stackPool));
} else {
backFace->Release();
backCount ++;
@@ -3796,7 +3796,7 @@ dgMeshEffect *dgMeshEffect::GetNextLayer(dgInt32 mark) const {
faceIndex[count] = ptr->m_incidentVertex;
faceDataIndex[count] = ptr->m_userData;
count++;
- NEWTON_ASSERT(count < dgInt32(sizeof(faceIndex) / sizeof(faceIndex[0])));
+ NEWTON_ASSERT(count < dgInt32(ARRAYSIZE(faceIndex)));
ptr = ptr->m_next;
} while (ptr != edgeI);
polyhedra.AddFace(count, &faceIndex[0], &faceDataIndex[0]);
@@ -3888,14 +3888,14 @@ void dgMeshEffect::ClipMesh(const dgMeshEffectSolidTree *const clipper,
stackPool[stack] = root->m_front;
faceOnStack[stack] = face;
stack ++;
- NEWTON_ASSERT (stack < sizeof (stackPool) / sizeof (stackPool[0]));
+ NEWTON_ASSERT (stack < ARRAYSIZE(stackPool));
} else {
//if (root->m_back) {
NEWTON_ASSERT (root->m_back->m_planeType == dgMeshEffectSolidTree::m_divider);
stackPool[stack] = root->m_back;
faceOnStack[stack] = face;
stack ++;
- NEWTON_ASSERT (stack < sizeof (stackPool) / sizeof (stackPool[0]));
+ NEWTON_ASSERT (stack < ARRAYSIZE(stackPool));
}
}
*/
@@ -3905,7 +3905,7 @@ void dgMeshEffect::ClipMesh(const dgMeshEffectSolidTree *const clipper,
stackPool[stack] = root->m_front;
faceOnStack[stack] = frontFace;
stack++;
- NEWTON_ASSERT(stack < dgInt32(sizeof(stackPool) / sizeof(stackPool[0])));
+ NEWTON_ASSERT(stack < dgInt32(ARRAYSIZE(stackPool)));
} else {
// if (xxx == 485){
@@ -3925,7 +3925,7 @@ void dgMeshEffect::ClipMesh(const dgMeshEffectSolidTree *const clipper,
stackPool[stack] = root->m_back;
faceOnStack[stack] = backFace;
stack++;
- NEWTON_ASSERT(stack < dgInt32(sizeof(stackPool) / sizeof(stackPool[0])));
+ NEWTON_ASSERT(stack < dgInt32(ARRAYSIZE(stackPool)));
} else {
// if (xxx == 485){
diff --git a/engines/hpl1/engine/libraries/newton/physics/dgMeshEffect2.cpp b/engines/hpl1/engine/libraries/newton/physics/dgMeshEffect2.cpp
index 4c311ea3741..b7c3e63280e 100644
--- a/engines/hpl1/engine/libraries/newton/physics/dgMeshEffect2.cpp
+++ b/engines/hpl1/engine/libraries/newton/physics/dgMeshEffect2.cpp
@@ -211,14 +211,14 @@ dgMeshEffect *dgMeshEffect::CreateVoronoiPartition(dgInt32 pointsCount,
pointArray[countI] = voronoiPoints[i] + normal.Scale(perimeterConvexBound);
countI++;
- NEWTON_ASSERT(countI < dgInt32(sizeof(pointArray) / sizeof(pointArray[0])));
+ NEWTON_ASSERT(countI < dgInt32(ARRAYSIZE(pointArray)));
}
}
}
pointArray[countI] = voronoiPoints[i];
countI++;
- NEWTON_ASSERT(countI < dgInt32(sizeof(pointArray) / sizeof(pointArray[0])));
+ NEWTON_ASSERT(countI < dgInt32(ARRAYSIZE(pointArray)));
}
dgMeshEffect *const convexMesh = MakeDelanayIntersection(tree,
diff --git a/engines/hpl1/engine/libraries/newton/physics/dgMeshEffectSolidTree.cpp b/engines/hpl1/engine/libraries/newton/physics/dgMeshEffectSolidTree.cpp
index 4d59177881a..c22ac7bd5f7 100644
--- a/engines/hpl1/engine/libraries/newton/physics/dgMeshEffectSolidTree.cpp
+++ b/engines/hpl1/engine/libraries/newton/physics/dgMeshEffectSolidTree.cpp
@@ -366,8 +366,8 @@ void dgMeshTreeCSGFace::Clip(const dgHugeVector &plane,
leftFace[leftCount] = p1;
leftCount++;
}
- NEWTON_ASSERT(leftCount < dgInt32((sizeof(leftFace) / sizeof(leftFace[0])) - 1));
- NEWTON_ASSERT(rightCount < dgInt32((sizeof(rightFace) / sizeof(rightFace[0])) - 1));
+ NEWTON_ASSERT(leftCount < dgInt32((ARRAYSIZE(leftFace)) - 1));
+ NEWTON_ASSERT(rightCount < dgInt32((ARRAYSIZE(rightFace)) - 1));
i0 = i1;
i1++;
@@ -494,7 +494,7 @@ void dgMeshEffectSolidTree::AddFace(const dgMeshEffect &mesh,
faces[stack] = backOut;
pool[stack] = root->m_back;
stack++;
- NEWTON_ASSERT(stack < dgInt32(sizeof(pool) / sizeof(pool[0])));
+ NEWTON_ASSERT(stack < dgInt32(ARRAYSIZE(pool)));
}
}
@@ -508,7 +508,7 @@ void dgMeshEffectSolidTree::AddFace(const dgMeshEffect &mesh,
faces[stack] = frontOut;
pool[stack] = root->m_front;
stack++;
- NEWTON_ASSERT(stack < dgInt32(sizeof(pool) / sizeof(pool[0])));
+ NEWTON_ASSERT(stack < dgInt32(ARRAYSIZE(pool)));
}
}
}
diff --git a/engines/hpl1/engine/libraries/newton/physics/dgMinkowskiConv.cpp b/engines/hpl1/engine/libraries/newton/physics/dgMinkowskiConv.cpp
index 6de151dbb8b..200b073fa4f 100644
--- a/engines/hpl1/engine/libraries/newton/physics/dgMinkowskiConv.cpp
+++ b/engines/hpl1/engine/libraries/newton/physics/dgMinkowskiConv.cpp
@@ -903,7 +903,7 @@ class dgContactSolver {
output += 2;
edgeIndex++;
- NEWTON_ASSERT(edgeIndex < dgInt32(sizeof(subdivision) / sizeof(subdivision[0])));
+ NEWTON_ASSERT(edgeIndex < dgInt32(ARRAYSIZE(subdivision)));
//NEWTON_ASSERT (CheckNormal (poly, shapeNormal));
}
}
@@ -1081,7 +1081,7 @@ class dgContactSolver {
output += 2;
edgeIndex++;
- NEWTON_ASSERT(edgeIndex < dgInt32(sizeof(subdivision) / sizeof(subdivision[0])));
+ NEWTON_ASSERT(edgeIndex < dgInt32(ARRAYSIZE(subdivision)));
//NEWTON_ASSERT (CheckNormal (poly, shapeNormal));
}
}
@@ -1887,7 +1887,7 @@ class dgContactSolver {
dgInt32 best = 0;
dgFloat32 maxErr = dgFloat32(0.0f);
dgInt32 j = 0;
- for (; j < dgInt32(sizeof(m_dir) / sizeof(m_dir[0])); j++) {
+ for (; j < dgInt32(ARRAYSIZE(m_dir)); j++) {
// dgFloat32 error2;
CalcSupportVertex(m_dir[j], 1);
dgVector e(m_hullVertex[1] - m_hullVertex[0]);
@@ -1901,7 +1901,7 @@ class dgContactSolver {
}
}
- if (j == dgInt32(sizeof(m_dir) / sizeof(m_dir[0]))) {
+ if (j == dgInt32(ARRAYSIZE(m_dir))) {
NEWTON_ASSERT(maxErr > dgFloat32(0.0f));
CalcSupportVertex(m_dir[best], 1);
}
@@ -1915,7 +1915,7 @@ class dgContactSolver {
dgFloat32 maxErr = dgFloat32(0.0f);
dgVector e0(m_hullVertex[1] - m_hullVertex[0]);
dgInt32 j = 0;
- for (; j < dgInt32(sizeof(m_dir) / sizeof(m_dir[0])); j++) {
+ for (; j < dgInt32(ARRAYSIZE(m_dir)); j++) {
CalcSupportVertex(m_dir[j], 2);
dgVector e1(m_hullVertex[2] - m_hullVertex[0]);
dgVector n(e0 * e1);
@@ -1929,7 +1929,7 @@ class dgContactSolver {
}
}
- if (j == dgInt32(sizeof(m_dir) / sizeof(m_dir[0]))) {
+ if (j == dgInt32(ARRAYSIZE(m_dir))) {
NEWTON_ASSERT(maxErr > dgFloat32(0.0f));
CalcSupportVertex(m_dir[best], 2);
}
@@ -2252,7 +2252,7 @@ class dgContactSolver {
dgInt32 best = 0;
dgFloat64 maxErr = dgFloat64(0.0f);
dgInt32 j = 0;
- for (; j < dgInt32(sizeof(m_dir) / sizeof(m_dir[0])); j++) {
+ for (; j < dgInt32(ARRAYSIZE(m_dir)); j++) {
dgFloat64 error2;
CalcSupportVertexLarge(m_dir[j], 1);
dgBigVector e(m_hullVertexLarge[1] - m_hullVertexLarge[0]);
@@ -2266,7 +2266,7 @@ class dgContactSolver {
}
}
- if (j == dgInt32(sizeof(m_dir) / sizeof(m_dir[0]))) {
+ if (j == dgInt32(ARRAYSIZE(m_dir))) {
NEWTON_ASSERT(maxErr > dgFloat64(0.0f));
CalcSupportVertexLarge(m_dir[best], 1);
}
@@ -2280,7 +2280,7 @@ class dgContactSolver {
dgFloat64 maxErr = dgFloat64(0.0f);
dgBigVector e0(m_hullVertexLarge[1] - m_hullVertexLarge[0]);
dgInt32 j = 0;
- for (; j < dgInt32(sizeof(m_dir) / sizeof(m_dir[0])); j++) {
+ for (; j < dgInt32(ARRAYSIZE(m_dir)); j++) {
dgFloat64 error2;
CalcSupportVertexLarge(m_dir[j], 2);
dgBigVector e1(m_hullVertexLarge[2] - m_hullVertexLarge[0]);
@@ -2295,7 +2295,7 @@ class dgContactSolver {
}
}
- if (j == dgInt32(sizeof(m_dir) / sizeof(m_dir[0]))) {
+ if (j == dgInt32(ARRAYSIZE(m_dir))) {
NEWTON_ASSERT(maxErr > dgFloat64(0.0f));
CalcSupportVertexLarge(m_dir[best], 2);
}
@@ -3166,7 +3166,7 @@ class dgContactSolver {
CalcSupportVertexSimd(m_dir[0], 0);
dgInt32 i = 1;
- for (; i < dgInt32(sizeof(m_dir) / sizeof(m_dir[0])); i++) {
+ for (; i < dgInt32(ARRAYSIZE(m_dir)); i++) {
CalcSupportVertexSimd(m_dir[i], 1);
e1 = m_hullVertex[1] - m_hullVertex[0];
error2 = e1 % e1;
@@ -3175,7 +3175,7 @@ class dgContactSolver {
}
}
- for (i++; i < dgInt32(sizeof(m_dir) / sizeof(m_dir[0])); i++) {
+ for (i++; i < dgInt32(ARRAYSIZE(m_dir)); i++) {
CalcSupportVertexSimd(m_dir[i], 2);
e2 = m_hullVertex[2] - m_hullVertex[0];
normal = e1 * e2;
@@ -3186,7 +3186,7 @@ class dgContactSolver {
}
error2 = dgFloat32(0.0f);
- for (i++; i < dgInt32(sizeof(m_dir) / sizeof(m_dir[0])); i++) {
+ for (i++; i < dgInt32(ARRAYSIZE(m_dir)); i++) {
CalcSupportVertexSimd(m_dir[i], 3);
e3 = m_hullVertex[3] - m_hullVertex[0];
@@ -3196,10 +3196,10 @@ class dgContactSolver {
}
}
- if (i >= dgInt32(sizeof(m_dir) / sizeof(m_dir[0]))) {
+ if (i >= dgInt32(ARRAYSIZE(m_dir))) {
best = 0;
maxErr = dgFloat32(0.0f);
- for (i = 1; i < dgInt32(sizeof(m_dir) / sizeof(m_dir[0])); i++) {
+ for (i = 1; i < dgInt32(ARRAYSIZE(m_dir)); i++) {
CalcSupportVertexSimd(m_dir[i], 1);
e1 = m_hullVertex[1] - m_hullVertex[0];
error2 = e1 % e1;
@@ -3213,7 +3213,7 @@ class dgContactSolver {
best = 0;
maxErr = dgFloat32(0.0f);
- for (i = 1; i < dgInt32(sizeof(m_dir) / sizeof(m_dir[0])); i++) {
+ for (i = 1; i < dgInt32(ARRAYSIZE(m_dir)); i++) {
CalcSupportVertexSimd(m_dir[i], 2);
e2 = m_hullVertex[2] - m_hullVertex[0];
normal = e1 * e2;
@@ -3230,7 +3230,7 @@ class dgContactSolver {
best = 0;
maxErr = dgFloat32(0.0f);
- for (i = 1; i < dgInt32(sizeof(m_dir) / sizeof(m_dir[0])); i++) {
+ for (i = 1; i < dgInt32(ARRAYSIZE(m_dir)); i++) {
CalcSupportVertexSimd(m_dir[i], 3);
e3 = m_hullVertex[3] - m_hullVertex[0];
@@ -3313,7 +3313,7 @@ class dgContactSolver {
CalcSupportVertex(m_dir[0], 0);
dgInt32 i = 1;
- for (; i < dgInt32(sizeof(m_dir) / sizeof(m_dir[0])); i++) {
+ for (; i < dgInt32(ARRAYSIZE(m_dir)); i++) {
CalcSupportVertex(m_dir[i], 1);
e1 = m_hullVertex[1] - m_hullVertex[0];
error2 = e1 % e1;
@@ -3322,7 +3322,7 @@ class dgContactSolver {
}
}
- for (i++; i < dgInt32(sizeof(m_dir) / sizeof(m_dir[0])); i++) {
+ for (i++; i < dgInt32(ARRAYSIZE(m_dir)); i++) {
CalcSupportVertex(m_dir[i], 2);
e2 = m_hullVertex[2] - m_hullVertex[0];
normal = e1 * e2;
@@ -3333,7 +3333,7 @@ class dgContactSolver {
}
error2 = dgFloat32(0.0f);
- for (i++; i < dgInt32(sizeof(m_dir) / sizeof(m_dir[0])); i++) {
+ for (i++; i < dgInt32(ARRAYSIZE(m_dir)); i++) {
CalcSupportVertex(m_dir[i], 3);
e3 = m_hullVertex[3] - m_hullVertex[0];
error2 = normal % e3;
@@ -3342,10 +3342,10 @@ class dgContactSolver {
}
}
- if (i >= dgInt32(sizeof(m_dir) / sizeof(m_dir[0]))) {
+ if (i >= dgInt32(ARRAYSIZE(m_dir))) {
best = 0;
maxErr = dgFloat32(0.0f);
- for (i = 1; i < dgInt32(sizeof(m_dir) / sizeof(m_dir[0])); i++) {
+ for (i = 1; i < dgInt32(ARRAYSIZE(m_dir)); i++) {
CalcSupportVertex(m_dir[i], 1);
e1 = m_hullVertex[1] - m_hullVertex[0];
error2 = e1 % e1;
@@ -3359,7 +3359,7 @@ class dgContactSolver {
best = 0;
maxErr = dgFloat32(0.0f);
- for (i = 1; i < dgInt32(sizeof(m_dir) / sizeof(m_dir[0])); i++) {
+ for (i = 1; i < dgInt32(ARRAYSIZE(m_dir)); i++) {
CalcSupportVertex(m_dir[i], 2);
e2 = m_hullVertex[2] - m_hullVertex[0];
normal = e1 * e2;
@@ -3376,7 +3376,7 @@ class dgContactSolver {
best = 0;
maxErr = dgFloat32(0.0f);
- for (i = 1; i < dgInt32(sizeof(m_dir) / sizeof(m_dir[0])); i++) {
+ for (i = 1; i < dgInt32(ARRAYSIZE(m_dir)); i++) {
CalcSupportVertex(m_dir[i], 3);
e3 = m_hullVertex[3] - m_hullVertex[0];
@@ -3452,7 +3452,7 @@ class dgContactSolver {
CalcSupportVertexLarge(m_dir[0], 0);
dgInt32 i = 1;
- for (; i < dgInt32(sizeof(m_dir) / sizeof(m_dir[0])); i++) {
+ for (; i < dgInt32(ARRAYSIZE(m_dir)); i++) {
dgFloat64 error3;
CalcSupportVertexLarge(m_dir[i], 1);
e1 = m_hullVertexLarge[1] - m_hullVertexLarge[0];
@@ -3462,7 +3462,7 @@ class dgContactSolver {
}
}
- for (i++; i < dgInt32(sizeof(m_dir) / sizeof(m_dir[0])); i++) {
+ for (i++; i < dgInt32(ARRAYSIZE(m_dir)); i++) {
dgFloat64 error3;
CalcSupportVertexLarge(m_dir[i], 2);
e2 = m_hullVertexLarge[2] - m_hullVertexLarge[0];
@@ -3474,7 +3474,7 @@ class dgContactSolver {
}
error2 = dgFloat32(0.0f);
- for (i++; i < dgInt32(sizeof(m_dir) / sizeof(m_dir[0])); i++) {
+ for (i++; i < dgInt32(ARRAYSIZE(m_dir)); i++) {
CalcSupportVertexLarge(m_dir[i], 3);
e3 = m_hullVertexLarge[3] - m_hullVertexLarge[0];
error2 = normal % e3;
@@ -3483,13 +3483,13 @@ class dgContactSolver {
}
}
- if (i >= dgInt32(sizeof(m_dir) / sizeof(m_dir[0]))) {
+ if (i >= dgInt32(ARRAYSIZE(m_dir))) {
dgInt32 best;
dgFloat64 maxErr;
best = 0;
maxErr = dgFloat32(0.0f);
- for (i = 1; i < dgInt32(sizeof(m_dir) / sizeof(m_dir[0])); i++) {
+ for (i = 1; i < dgInt32(ARRAYSIZE(m_dir)); i++) {
CalcSupportVertexLarge(m_dir[i], 1);
e1 = m_hullVertexLarge[1] - m_hullVertexLarge[0];
error2 = e1 % e1;
@@ -3503,7 +3503,7 @@ class dgContactSolver {
best = 0;
maxErr = dgFloat32(0.0f);
- for (i = 1; i < dgInt32(sizeof(m_dir) / sizeof(m_dir[0])); i++) {
+ for (i = 1; i < dgInt32(ARRAYSIZE(m_dir)); i++) {
CalcSupportVertexLarge(m_dir[i], 2);
dgBigVector e4(m_hullVertexLarge[2] - m_hullVertexLarge[0]);
normal = e1 * e4;
@@ -3520,7 +3520,7 @@ class dgContactSolver {
best = 0;
maxErr = dgFloat32(0.0f);
- for (i = 1; i < dgInt32(sizeof(m_dir) / sizeof(m_dir[0])); i++) {
+ for (i = 1; i < dgInt32(ARRAYSIZE(m_dir)); i++) {
CalcSupportVertexLarge(m_dir[i], 3);
dgBigVector e5(m_hullVertexLarge[3] - m_hullVertexLarge[0]);
@@ -3696,7 +3696,7 @@ class dgContactSolver {
} else {
face = &m_simplex[m_planeIndex];
m_planeIndex++;
- NEWTON_ASSERT(m_planeIndex < dgInt32(sizeof(m_simplex) / sizeof(m_simplex[0])));
+ NEWTON_ASSERT(m_planeIndex < dgInt32(ARRAYSIZE(m_simplex)));
}
return face;
}
@@ -3882,8 +3882,8 @@ class dgContactSolver {
deadFaces[deadCount] = adjacent;
stack++;
deadCount++;
- NEWTON_ASSERT(stack < dgInt32(sizeof(stackPool) / sizeof(stackPool[0])));
- NEWTON_ASSERT(deadCount < dgInt32(sizeof(deadFaces) / sizeof(deadFaces[0])));
+ NEWTON_ASSERT(stack < dgInt32(ARRAYSIZE(stackPool)));
+ NEWTON_ASSERT(deadCount < dgInt32(ARRAYSIZE(deadFaces)));
} else {
silhouette = adjacent;
@@ -3930,7 +3930,7 @@ class dgContactSolver {
&silhouette->m_adjancentFace[adjacentIndex];
silhouetteCapCount = 1;
NEWTON_ASSERT(
- silhouetteCapCount < dgInt32(sizeof(sillueteCap) / sizeof(sillueteCap[0])));
+ silhouetteCapCount < dgInt32(ARRAYSIZE(sillueteCap)));
do {
silhouette = &m_simplex[silhouette->m_adjancentFace[adjacentIndex]];
adjacentIndex = (DG_GETADJACENTINDEX_VERTEX(silhouette, i0));
@@ -3973,7 +3973,7 @@ class dgContactSolver {
&silhouette->m_adjancentFace[adjacentIndex];
silhouetteCapCount++;
NEWTON_ASSERT(
- silhouetteCapCount < dgInt32(sizeof(sillueteCap) / sizeof(sillueteCap[0])));
+ silhouetteCapCount < dgInt32(ARRAYSIZE(sillueteCap)));
do {
silhouette =
@@ -4196,9 +4196,9 @@ class dgContactSolver {
deadFaces[deadCount] = adjacent;
stack++;
deadCount++;
- NEWTON_ASSERT(stack < dgInt32(sizeof(stackPool) / sizeof(stackPool[0])));
+ NEWTON_ASSERT(stack < dgInt32(ARRAYSIZE(stackPool)));
NEWTON_ASSERT(
- deadCount < dgInt32(sizeof(deadFaces) / sizeof(deadFaces[0])));
+ deadCount < dgInt32(ARRAYSIZE(deadFaces)));
} else {
silhouette = adjacent;
@@ -4243,7 +4243,7 @@ class dgContactSolver {
sillueteCap[0].m_faceCopling =
&silhouette->m_adjancentFace[adjacentIndex];
silhouetteCapCount = 1;
- NEWTON_ASSERT(silhouetteCapCount < dgInt32(sizeof(sillueteCap) / sizeof(sillueteCap[0])));
+ NEWTON_ASSERT(silhouetteCapCount < dgInt32(ARRAYSIZE(sillueteCap)));
do {
silhouette = &m_simplex[silhouette->m_adjancentFace[adjacentIndex]];
adjacentIndex = (DG_GETADJACENTINDEX_VERTEX(silhouette, i0));
@@ -4286,7 +4286,7 @@ class dgContactSolver {
sillueteCap[silhouetteCapCount].m_faceCopling =
&silhouette->m_adjancentFace[adjacentIndex];
silhouetteCapCount++;
- NEWTON_ASSERT(silhouetteCapCount < dgInt32(sizeof(sillueteCap) / sizeof(sillueteCap[0])));
+ NEWTON_ASSERT(silhouetteCapCount < dgInt32(ARRAYSIZE(sillueteCap)));
do {
silhouette =
@@ -4513,8 +4513,8 @@ class dgContactSolver {
deadFaces[deadCount] = adjacent;
stack++;
deadCount++;
- NEWTON_ASSERT(stack < dgInt32(sizeof(stackPool) / sizeof(stackPool[0])));
- NEWTON_ASSERT(deadCount < dgInt32(sizeof(deadFaces) / sizeof(deadFaces[0])));
+ NEWTON_ASSERT(stack < dgInt32(ARRAYSIZE(stackPool)));
+ NEWTON_ASSERT(deadCount < dgInt32(ARRAYSIZE(deadFaces)));
} else {
silhouette = adjacent;
@@ -4560,7 +4560,7 @@ class dgContactSolver {
&silhouette->m_adjancentFace[adjacentIndex];
silhouetteCapCount = 1;
NEWTON_ASSERT(
- silhouetteCapCount < dgInt32(sizeof(sillueteCap) / sizeof(sillueteCap[0])));
+ silhouetteCapCount < dgInt32(ARRAYSIZE(sillueteCap)));
do {
silhouette = &m_simplex[silhouette->m_adjancentFace[adjacentIndex]];
adjacentIndex = (DG_GETADJACENTINDEX_VERTEX(silhouette, i0));
@@ -4604,7 +4604,7 @@ class dgContactSolver {
&silhouette->m_adjancentFace[adjacentIndex];
silhouetteCapCount++;
NEWTON_ASSERT(
- silhouetteCapCount < dgInt32(sizeof(sillueteCap) / sizeof(sillueteCap[0])));
+ silhouetteCapCount < dgInt32(ARRAYSIZE(sillueteCap)));
do {
silhouette =
@@ -5458,10 +5458,7 @@ void dgWorld::InitConvexCollision() {
dgContactSolver::m_dir[13] = dgVector(dgFloat32(0.0f), dgFloat32(0.0f),
-dgFloat32(1.0f), dgFloat32(0.0f));
- for (i = 0;
- i < dgInt32(
- sizeof(dgContactSolver::m_dir) / sizeof(dgContactSolver::m_dir[0]));
- i++) {
+ for (i = 0; i < dgInt32(ARRAYSIZE(dgContactSolver::m_dir)); i++) {
dgVector dir(dgContactSolver::m_dir[i]);
dgContactSolver::m_dir[i] = dir.Scale(dgFloat32(1.0f) / dgSqrt(dir % dir));
}
@@ -5546,16 +5543,10 @@ void dgWorld::InitConvexCollision() {
#endif
#ifdef _DEBUG
- for (i = 0;
- i < dgInt32(
- sizeof(dgContactSolver::m_dir) / sizeof(dgContactSolver::m_dir[0]));
- i++) {
+ for (i = 0; i < dgInt32(ARRAYSIZE(dgContactSolver::m_dir)); i++) {
NEWTON_ASSERT(
dgContactSolver::m_dir[i] % dgContactSolver::m_dir[i] > dgFloat32(0.9999f));
- for (dgInt32 j = i + 1;
- j < dgInt32(
- sizeof(dgContactSolver::m_dir) / sizeof(dgContactSolver::m_dir[0]));
- j++) {
+ for (dgInt32 j = i + 1; j < dgInt32(ARRAYSIZE(dgContactSolver::m_dir)); j++) {
NEWTON_ASSERT(
dgContactSolver::m_dir[i] % dgContactSolver::m_dir[j] < dgFloat32(0.9999f));
}
More information about the Scummvm-git-logs
mailing list