From f3be5384997da7ddeccc526036985a80de660bae Mon Sep 17 00:00:00 2001 From: Daniel Chappuis Date: Sun, 5 Aug 2018 16:10:13 +0200 Subject: [PATCH] Fix compilation issue of the unit tests --- test/Test.h | 4 +- test/tests/collision/TestAABB.h | 212 +-- test/tests/collision/TestCollisionWorld.h | 1046 ++++++------- test/tests/collision/TestDynamicAABBTree.h | 268 ++-- test/tests/collision/TestHalfEdgeStructure.h | 125 +- test/tests/collision/TestPointInside.h | 510 +++--- test/tests/collision/TestRaycast.h | 1382 ++++++++--------- .../tests/collision/TestTriangleVertexArray.h | 106 +- test/tests/containers/TestList.h | 224 +-- test/tests/containers/TestMap.h | 214 +-- test/tests/containers/TestSet.h | 208 +-- .../mathematics/TestMathematicsFunctions.h | 240 +-- test/tests/mathematics/TestMatrix2x2.h | 118 +- test/tests/mathematics/TestMatrix3x3.h | 196 +-- test/tests/mathematics/TestQuaternion.h | 126 +- test/tests/mathematics/TestTransform.h | 98 +- test/tests/mathematics/TestVector2.h | 126 +- test/tests/mathematics/TestVector3.h | 164 +- 18 files changed, 2684 insertions(+), 2683 deletions(-) diff --git a/test/Test.h b/test/Test.h index 1288813d..227aed42 100644 --- a/test/Test.h +++ b/test/Test.h @@ -35,8 +35,8 @@ namespace reactphysics3d { // Macros -#define test(condition) applyTest(condition, #condition, __FILE__, __LINE__); -#define fail(text) applyFail(text, __FILE__, __LINE__); +#define rp3d_test(condition) applyTest(condition, #condition, __FILE__, __LINE__); +#define rp3d_fail(text) applyFail(text, __FILE__, __LINE__); // Class Test /** diff --git a/test/tests/collision/TestAABB.h b/test/tests/collision/TestAABB.h index 4328625c..9e6cb16d 100644 --- a/test/tests/collision/TestAABB.h +++ b/test/tests/collision/TestAABB.h @@ -93,60 +93,60 @@ class TestAABB : public Test { }; AABB aabb3 = AABB::createAABBForTriangle(trianglePoints); - test(aabb1.getMin().x == 0); - test(aabb1.getMin().y == 0); - test(aabb1.getMin().z == 0); - test(aabb1.getMax().x == 0); - test(aabb1.getMax().y == 0); - test(aabb1.getMax().z == 0); + rp3d_test(aabb1.getMin().x == 0); + rp3d_test(aabb1.getMin().y == 0); + rp3d_test(aabb1.getMin().z == 0); + rp3d_test(aabb1.getMax().x == 0); + rp3d_test(aabb1.getMax().y == 0); + rp3d_test(aabb1.getMax().z == 0); - test(aabb2.getMin().x == -3); - test(aabb2.getMin().y == -5); - test(aabb2.getMin().z == -8); - test(aabb2.getMax().x == 65); - test(aabb2.getMax().y == -1); - test(aabb2.getMax().z == 56); + rp3d_test(aabb2.getMin().x == -3); + rp3d_test(aabb2.getMin().y == -5); + rp3d_test(aabb2.getMin().z == -8); + rp3d_test(aabb2.getMax().x == 65); + rp3d_test(aabb2.getMax().y == -1); + rp3d_test(aabb2.getMax().z == 56); - test(aabb3.getMin().x == -12); - test(aabb3.getMin().y == -34); - test(aabb3.getMin().z == -73); - test(aabb3.getMax().x == 45); - test(aabb3.getMax().y == 98); - test(aabb3.getMax().z == 76); + rp3d_test(aabb3.getMin().x == -12); + rp3d_test(aabb3.getMin().y == -34); + rp3d_test(aabb3.getMin().z == -73); + rp3d_test(aabb3.getMax().x == 45); + rp3d_test(aabb3.getMax().y == 98); + rp3d_test(aabb3.getMax().z == 76); // -------- Test inflate() -------- // AABB aabbInflate(Vector3(-3, 4, 8), Vector3(-1, 6, 32)); aabbInflate.inflate(1, 2, 3); - test(approxEqual(aabbInflate.getMin().x, -4, 0.00001)); - test(approxEqual(aabbInflate.getMin().y, 2, 0.00001)); - test(approxEqual(aabbInflate.getMin().z, 5, 0.00001)); - test(approxEqual(aabbInflate.getMax().x, 0, 0.00001)); - test(approxEqual(aabbInflate.getMax().y, 8, 0.00001)); - test(approxEqual(aabbInflate.getMax().z, 35, 0.00001)); + rp3d_test(approxEqual(aabbInflate.getMin().x, -4, 0.00001)); + rp3d_test(approxEqual(aabbInflate.getMin().y, 2, 0.00001)); + rp3d_test(approxEqual(aabbInflate.getMin().z, 5, 0.00001)); + rp3d_test(approxEqual(aabbInflate.getMax().x, 0, 0.00001)); + rp3d_test(approxEqual(aabbInflate.getMax().y, 8, 0.00001)); + rp3d_test(approxEqual(aabbInflate.getMax().z, 35, 0.00001)); // -------- Test getExtent() --------- // - test(approxEqual(mAABB1.getExtent().x, 20)); - test(approxEqual(mAABB1.getExtent().y, 20)); - test(approxEqual(mAABB1.getExtent().z, 20)); + rp3d_test(approxEqual(mAABB1.getExtent().x, 20)); + rp3d_test(approxEqual(mAABB1.getExtent().y, 20)); + rp3d_test(approxEqual(mAABB1.getExtent().z, 20)); - test(approxEqual(mAABB2.getExtent().x, 3)); - test(approxEqual(mAABB2.getExtent().y, 16)); - test(approxEqual(mAABB2.getExtent().z, 60)); + rp3d_test(approxEqual(mAABB2.getExtent().x, 3)); + rp3d_test(approxEqual(mAABB2.getExtent().y, 16)); + rp3d_test(approxEqual(mAABB2.getExtent().z, 60)); - test(approxEqual(mAABB3.getExtent().x, 50)); - test(approxEqual(mAABB3.getExtent().y, 50)); - test(approxEqual(mAABB3.getExtent().z, 50)); + rp3d_test(approxEqual(mAABB3.getExtent().x, 50)); + rp3d_test(approxEqual(mAABB3.getExtent().y, 50)); + rp3d_test(approxEqual(mAABB3.getExtent().z, 50)); // -------- Test getCenter() -------- // - test(mAABB1.getCenter().x == 0); - test(mAABB1.getCenter().y == 0); - test(mAABB1.getCenter().z == 0); + rp3d_test(mAABB1.getCenter().x == 0); + rp3d_test(mAABB1.getCenter().y == 0); + rp3d_test(mAABB1.getCenter().z == 0); - test(approxEqual(mAABB2.getCenter().x, -3.5)); - test(approxEqual(mAABB2.getCenter().y, 12)); - test(approxEqual(mAABB2.getCenter().z, 0)); + rp3d_test(approxEqual(mAABB2.getCenter().x, -3.5)); + rp3d_test(approxEqual(mAABB2.getCenter().y, 12)); + rp3d_test(approxEqual(mAABB2.getCenter().z, 0)); // -------- Test setMin(), setMax(), getMin(), getMax() -------- // @@ -154,29 +154,29 @@ class TestAABB : public Test { aabb5.setMin(Vector3(-12, 34, 6)); aabb5.setMax(Vector3(-3, 56, 20)); - test(aabb5.getMin().x == -12); - test(aabb5.getMin().y == 34); - test(aabb5.getMin().z == 6); - test(aabb5.getMax().x == -3); - test(aabb5.getMax().y == 56); - test(aabb5.getMax().z == 20); + rp3d_test(aabb5.getMin().x == -12); + rp3d_test(aabb5.getMin().y == 34); + rp3d_test(aabb5.getMin().z == 6); + rp3d_test(aabb5.getMax().x == -3); + rp3d_test(aabb5.getMax().y == 56); + rp3d_test(aabb5.getMax().z == 20); // -------- Test assignment operator -------- // AABB aabb6; aabb6 = aabb2; - test(aabb6.getMin().x == -3); - test(aabb6.getMin().y == -5); - test(aabb6.getMin().z == -8); - test(aabb6.getMax().x == 65); - test(aabb6.getMax().y == -1); - test(aabb6.getMax().z == 56); + rp3d_test(aabb6.getMin().x == -3); + rp3d_test(aabb6.getMin().y == -5); + rp3d_test(aabb6.getMin().z == -8); + rp3d_test(aabb6.getMax().x == 65); + rp3d_test(aabb6.getMax().y == -1); + rp3d_test(aabb6.getMax().z == 56); // -------- Test getVolume() -------- // - test(approxEqual(mAABB1.getVolume(), 8000)); - test(approxEqual(mAABB2.getVolume(), 2880)); + rp3d_test(approxEqual(mAABB1.getVolume(), 8000)); + rp3d_test(approxEqual(mAABB2.getVolume(), 2880)); } void testMergeMethods() { @@ -189,70 +189,70 @@ class TestAABB : public Test { AABB aabb3; aabb3.mergeTwoAABBs(aabb1, mAABB1); - test(aabb3.getMin().x == -45); - test(aabb3.getMin().y == -10); - test(aabb3.getMin().z == -10); - test(aabb3.getMax().x == 23); - test(aabb3.getMax().y == 10); - test(aabb3.getMax().z == 10); + rp3d_test(aabb3.getMin().x == -45); + rp3d_test(aabb3.getMin().y == -10); + rp3d_test(aabb3.getMin().z == -10); + rp3d_test(aabb3.getMax().x == 23); + rp3d_test(aabb3.getMax().y == 10); + rp3d_test(aabb3.getMax().z == 10); AABB aabb4; aabb4.mergeTwoAABBs(aabb1, aabb2); - test(aabb4.getMin().x == -45); - test(aabb4.getMin().y == 6); - test(aabb4.getMin().z == -2); - test(aabb4.getMax().x == 23); - test(aabb4.getMax().y == 9); - test(aabb4.getMax().z == 45); + rp3d_test(aabb4.getMin().x == -45); + rp3d_test(aabb4.getMin().y == 6); + rp3d_test(aabb4.getMin().z == -2); + rp3d_test(aabb4.getMax().x == 23); + rp3d_test(aabb4.getMax().y == 9); + rp3d_test(aabb4.getMax().z == 45); // -------- Test mergeWithAABB() -------- // aabb1.mergeWithAABB(mAABB1); - test(aabb1.getMin().x == -45); - test(aabb1.getMin().y == -10); - test(aabb1.getMin().z == -10); - test(aabb1.getMax().x == 23); - test(aabb1.getMax().y == 10); - test(aabb1.getMax().z == 10); + rp3d_test(aabb1.getMin().x == -45); + rp3d_test(aabb1.getMin().y == -10); + rp3d_test(aabb1.getMin().z == -10); + rp3d_test(aabb1.getMax().x == 23); + rp3d_test(aabb1.getMax().y == 10); + rp3d_test(aabb1.getMax().z == 10); aabb2.mergeWithAABB(mAABB1); - test(aabb2.getMin().x == -15); - test(aabb2.getMin().y == -10); - test(aabb2.getMin().z == -10); - test(aabb2.getMax().x == 10); - test(aabb2.getMax().y == 10); - test(aabb2.getMax().z == 45); + rp3d_test(aabb2.getMin().x == -15); + rp3d_test(aabb2.getMin().y == -10); + rp3d_test(aabb2.getMin().z == -10); + rp3d_test(aabb2.getMax().x == 10); + rp3d_test(aabb2.getMax().y == 10); + rp3d_test(aabb2.getMax().z == 45); } void testIntersection() { // -------- Test contains(AABB) -------- // - test(!mAABB1.contains(mAABB2)); - test(mAABB3.contains(mAABB1)); - test(!mAABB1.contains(mAABB3)); - test(!mAABB1.contains(mAABB4)); - test(!mAABB4.contains(mAABB1)); + rp3d_test(!mAABB1.contains(mAABB2)); + rp3d_test(mAABB3.contains(mAABB1)); + rp3d_test(!mAABB1.contains(mAABB3)); + rp3d_test(!mAABB1.contains(mAABB4)); + rp3d_test(!mAABB4.contains(mAABB1)); // -------- Test contains(Vector3) -------- // - test(mAABB1.contains(Vector3(0, 0, 0))); - test(mAABB1.contains(Vector3(-5, 6, 9))); - test(mAABB1.contains(Vector3(-9, -4, -9))); - test(mAABB1.contains(Vector3(9, 4, 7))); - test(!mAABB1.contains(Vector3(-11, -4, -9))); - test(!mAABB1.contains(Vector3(1, 12, -9))); - test(!mAABB1.contains(Vector3(1, 8, -13))); - test(!mAABB1.contains(Vector3(-14, 82, -13))); + rp3d_test(mAABB1.contains(Vector3(0, 0, 0))); + rp3d_test(mAABB1.contains(Vector3(-5, 6, 9))); + rp3d_test(mAABB1.contains(Vector3(-9, -4, -9))); + rp3d_test(mAABB1.contains(Vector3(9, 4, 7))); + rp3d_test(!mAABB1.contains(Vector3(-11, -4, -9))); + rp3d_test(!mAABB1.contains(Vector3(1, 12, -9))); + rp3d_test(!mAABB1.contains(Vector3(1, 8, -13))); + rp3d_test(!mAABB1.contains(Vector3(-14, 82, -13))); // -------- Test testCollision() -------- // - test(mAABB1.testCollision(mAABB2)); - test(mAABB2.testCollision(mAABB1)); - test(mAABB1.testCollision(mAABB3)); - test(mAABB3.testCollision(mAABB1)); - test(!mAABB1.testCollision(mAABB4)); - test(!mAABB4.testCollision(mAABB1)); + rp3d_test(mAABB1.testCollision(mAABB2)); + rp3d_test(mAABB2.testCollision(mAABB1)); + rp3d_test(mAABB1.testCollision(mAABB3)); + rp3d_test(mAABB3.testCollision(mAABB1)); + rp3d_test(!mAABB1.testCollision(mAABB4)); + rp3d_test(!mAABB4.testCollision(mAABB1)); // -------- Test testCollisionTriangleAABB() -------- // @@ -260,8 +260,8 @@ class TestAABB : public Test { Vector3 trianglePoints[] = { Vector3(-2, 4, 6), Vector3(20, -34, -73), Vector3(-12, 98, 76) }; - test(mAABB1.testCollisionTriangleAABB(trianglePoints)); - test(!aabb.testCollisionTriangleAABB(trianglePoints)); + rp3d_test(mAABB1.testCollisionTriangleAABB(trianglePoints)); + rp3d_test(!aabb.testCollisionTriangleAABB(trianglePoints)); // -------- Test testRayIntersect() -------- // @@ -274,14 +274,14 @@ class TestAABB : public Test { Ray ray7(Vector3(-4, 6, -100), Vector3(-4, 6, -11), 0.6); Ray ray8(Vector3(-403, -432, -100), Vector3(134, 643, 23)); - test(mAABB1.testRayIntersect(ray1)); - test(!mAABB1.testRayIntersect(ray2)); - test(mAABB1.testRayIntersect(ray3)); - test(mAABB1.testRayIntersect(ray4)); - test(mAABB1.testRayIntersect(ray5)); - test(mAABB1.testRayIntersect(ray6)); - test(!mAABB1.testRayIntersect(ray7)); - test(!mAABB1.testRayIntersect(ray8)); + rp3d_test(mAABB1.testRayIntersect(ray1)); + rp3d_test(!mAABB1.testRayIntersect(ray2)); + rp3d_test(mAABB1.testRayIntersect(ray3)); + rp3d_test(mAABB1.testRayIntersect(ray4)); + rp3d_test(mAABB1.testRayIntersect(ray5)); + rp3d_test(mAABB1.testRayIntersect(ray6)); + rp3d_test(!mAABB1.testRayIntersect(ray7)); + rp3d_test(!mAABB1.testRayIntersect(ray8)); } }; diff --git a/test/tests/collision/TestCollisionWorld.h b/test/tests/collision/TestCollisionWorld.h index 7dcd1b64..affb678e 100644 --- a/test/tests/collision/TestCollisionWorld.h +++ b/test/tests/collision/TestCollisionWorld.h @@ -508,51 +508,51 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(&mCollisionCallback); - test(!mCollisionCallback.hasContacts()); + rp3d_test(!mCollisionCallback.hasContacts()); // ---------- Single body test ---------- // mCollisionCallback.reset(); mWorld->testCollision(mBoxBody1, &mCollisionCallback); - test(!mCollisionCallback.hasContacts()); + rp3d_test(!mCollisionCallback.hasContacts()); mCollisionCallback.reset(); mWorld->testCollision(mBoxBody2, &mCollisionCallback); - test(!mCollisionCallback.hasContacts()); + rp3d_test(!mCollisionCallback.hasContacts()); mCollisionCallback.reset(); mWorld->testCollision(mSphereBody1, &mCollisionCallback); - test(!mCollisionCallback.hasContacts()); + rp3d_test(!mCollisionCallback.hasContacts()); mCollisionCallback.reset(); mWorld->testCollision(mSphereBody2, &mCollisionCallback); - test(!mCollisionCallback.hasContacts()); + rp3d_test(!mCollisionCallback.hasContacts()); // Two bodies test mCollisionCallback.reset(); mWorld->testCollision(mBoxBody1, mBoxBody2, &mCollisionCallback); - test(!mCollisionCallback.hasContacts()); + rp3d_test(!mCollisionCallback.hasContacts()); mCollisionCallback.reset(); mWorld->testCollision(mSphereBody1, mSphereBody2, &mCollisionCallback); - test(!mCollisionCallback.hasContacts()); + rp3d_test(!mCollisionCallback.hasContacts()); mCollisionCallback.reset(); mWorld->testCollision(mBoxBody1, mSphereBody1, &mCollisionCallback); - test(!mCollisionCallback.hasContacts()); + rp3d_test(!mCollisionCallback.hasContacts()); mCollisionCallback.reset(); mWorld->testCollision(mBoxBody1, mSphereBody2, &mCollisionCallback); - test(!mCollisionCallback.hasContacts()); + rp3d_test(!mCollisionCallback.hasContacts()); mCollisionCallback.reset(); mWorld->testCollision(mBoxBody2, mSphereBody1, &mCollisionCallback); - test(!mCollisionCallback.hasContacts()); + rp3d_test(!mCollisionCallback.hasContacts()); mCollisionCallback.reset(); mWorld->testCollision(mBoxBody2, mSphereBody2, &mCollisionCallback); - test(!mCollisionCallback.hasContacts()); + rp3d_test(!mCollisionCallback.hasContacts()); } void testNoOverlap() { @@ -564,28 +564,28 @@ class TestCollisionWorld : public Test { mOverlapCallback.reset(); mWorld->testOverlap(mBoxBody1, &mOverlapCallback); - test(!mOverlapCallback.hasOverlap()); + rp3d_test(!mOverlapCallback.hasOverlap()); mOverlapCallback.reset(); mWorld->testOverlap(mBoxBody2, &mOverlapCallback); - test(!mOverlapCallback.hasOverlap()); + rp3d_test(!mOverlapCallback.hasOverlap()); mOverlapCallback.reset(); mWorld->testOverlap(mSphereBody1, &mOverlapCallback); - test(!mOverlapCallback.hasOverlap()); + rp3d_test(!mOverlapCallback.hasOverlap()); mOverlapCallback.reset(); mWorld->testOverlap(mSphereBody2, &mOverlapCallback); - test(!mOverlapCallback.hasOverlap()); + rp3d_test(!mOverlapCallback.hasOverlap()); // Two bodies test - test(!mWorld->testOverlap(mBoxBody1, mBoxBody2)); - test(!mWorld->testOverlap(mSphereBody1, mSphereBody2)); - test(!mWorld->testOverlap(mBoxBody1, mSphereBody1)); - test(!mWorld->testOverlap(mBoxBody1, mSphereBody2)); - test(!mWorld->testOverlap(mBoxBody2, mSphereBody1)); - test(!mWorld->testOverlap(mBoxBody2, mSphereBody2)); + rp3d_test(!mWorld->testOverlap(mBoxBody1, mBoxBody2)); + rp3d_test(!mWorld->testOverlap(mSphereBody1, mSphereBody2)); + rp3d_test(!mWorld->testOverlap(mBoxBody1, mSphereBody1)); + rp3d_test(!mWorld->testOverlap(mBoxBody1, mSphereBody2)); + rp3d_test(!mWorld->testOverlap(mBoxBody2, mSphereBody1)); + rp3d_test(!mWorld->testOverlap(mBoxBody2, mSphereBody2)); } void testNoAABBOverlap() { @@ -595,12 +595,12 @@ class TestCollisionWorld : public Test { // Two bodies test - test(!mWorld->testAABBOverlap(mBoxBody1, mBoxBody2)); - test(!mWorld->testAABBOverlap(mSphereBody1, mSphereBody2)); - test(!mWorld->testAABBOverlap(mBoxBody1, mSphereBody1)); - test(!mWorld->testAABBOverlap(mBoxBody1, mSphereBody2)); - test(!mWorld->testAABBOverlap(mBoxBody2, mSphereBody1)); - test(!mWorld->testAABBOverlap(mBoxBody2, mSphereBody2)); + rp3d_test(!mWorld->testAABBOverlap(mBoxBody1, mBoxBody2)); + rp3d_test(!mWorld->testAABBOverlap(mSphereBody1, mSphereBody2)); + rp3d_test(!mWorld->testAABBOverlap(mBoxBody1, mSphereBody1)); + rp3d_test(!mWorld->testAABBOverlap(mBoxBody1, mSphereBody2)); + rp3d_test(!mWorld->testAABBOverlap(mBoxBody2, mSphereBody1)); + rp3d_test(!mWorld->testAABBOverlap(mBoxBody2, mSphereBody2)); } void testSphereVsSphereCollision() { @@ -617,28 +617,28 @@ class TestCollisionWorld : public Test { // ----- Test AABB overlap ----- // - test(mWorld->testAABBOverlap(mSphereBody1, mSphereBody2)); + rp3d_test(mWorld->testAABBOverlap(mSphereBody1, mSphereBody2)); mOverlapCallback.reset(); mWorld->testOverlap(mSphereBody1, &mOverlapCallback); - test(mOverlapCallback.hasOverlap()); + rp3d_test(mOverlapCallback.hasOverlap()); mOverlapCallback.reset(); mWorld->testOverlap(mSphereBody2, &mOverlapCallback); - test(mOverlapCallback.hasOverlap()); + rp3d_test(mOverlapCallback.hasOverlap()); // ----- Test global collision test ----- // mCollisionCallback.reset(); mWorld->testCollision(&mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mSphereProxyShape2)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mSphereProxyShape2)); // Get collision data const CollisionData* collisionData = mCollisionCallback.getCollisionData(mSphereProxyShape1, mSphereProxyShape2); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response bool swappedBodiesCollisionData = collisionData->getBody1()->getId() != mSphereBody1->getId(); @@ -647,7 +647,7 @@ class TestCollisionWorld : public Test { Vector3 localBody1Point(3, 0, 0); Vector3 localBody2Point = transform2.getInverse() * Vector3(12, 20, 50); decimal penetrationDepth = 1.0f; - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, swappedBodiesCollisionData ? localBody1Point : localBody2Point, penetrationDepth)); @@ -656,19 +656,19 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mSphereBody1, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mSphereProxyShape2)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mSphereProxyShape2)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mSphereProxyShape1, mSphereProxyShape2); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mSphereBody1->getId(); // Test contact points - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, swappedBodiesCollisionData ? localBody1Point : localBody2Point, penetrationDepth)); @@ -677,19 +677,19 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mSphereBody2, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mSphereProxyShape2)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mSphereProxyShape2)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mSphereProxyShape1, mSphereProxyShape2); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mSphereBody1->getId(); // Test contact points - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, swappedBodiesCollisionData ? localBody1Point : localBody2Point, penetrationDepth)); @@ -698,19 +698,19 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mSphereBody1, mSphereBody2, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mSphereProxyShape2)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mSphereProxyShape2)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mSphereProxyShape1, mSphereProxyShape2); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mSphereBody1->getId(); // Test contact points - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, swappedBodiesCollisionData ? localBody1Point : localBody2Point, penetrationDepth)); @@ -737,28 +737,28 @@ class TestCollisionWorld : public Test { // ----- Test AABB overlap ----- // - test(mWorld->testAABBOverlap(mSphereBody1, mBoxBody1)); + rp3d_test(mWorld->testAABBOverlap(mSphereBody1, mBoxBody1)); mOverlapCallback.reset(); mWorld->testOverlap(mSphereBody1, &mOverlapCallback); - test(mOverlapCallback.hasOverlap()); + rp3d_test(mOverlapCallback.hasOverlap()); mOverlapCallback.reset(); mWorld->testOverlap(mBoxBody1, &mOverlapCallback); - test(mOverlapCallback.hasOverlap()); + rp3d_test(mOverlapCallback.hasOverlap()); // ----- Test global collision test ----- // mCollisionCallback.reset(); mWorld->testCollision(&mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mBoxProxyShape1)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mBoxProxyShape1)); // Get collision data const CollisionData* collisionData = mCollisionCallback.getCollisionData(mSphereProxyShape1, mBoxProxyShape1); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response bool swappedBodiesCollisionData = collisionData->getBody1()->getId() != mSphereBody1->getId(); @@ -767,7 +767,7 @@ class TestCollisionWorld : public Test { Vector3 localBody1Point(3, 0, 0); Vector3 localBody2Point(-3, 0, 0); decimal penetrationDepth = 2.0f; - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, swappedBodiesCollisionData ? localBody1Point : localBody2Point, penetrationDepth)); @@ -776,19 +776,19 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mSphereBody1, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mBoxProxyShape1)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mBoxProxyShape1)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mSphereProxyShape1, mBoxProxyShape1); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mSphereBody1->getId(); // Test contact points - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, swappedBodiesCollisionData ? localBody1Point : localBody2Point, penetrationDepth)); @@ -797,19 +797,19 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mBoxBody1, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mBoxProxyShape1)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mBoxProxyShape1)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mSphereProxyShape1, mBoxProxyShape1); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mSphereBody1->getId(); // Test contact points - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, swappedBodiesCollisionData ? localBody1Point : localBody2Point, penetrationDepth)); @@ -818,19 +818,19 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mSphereBody1, mBoxBody1, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mBoxProxyShape1)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mBoxProxyShape1)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mSphereProxyShape1, mBoxProxyShape1); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mSphereBody1->getId(); // Test contact points - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, swappedBodiesCollisionData ? localBody1Point : localBody2Point, penetrationDepth)); @@ -847,28 +847,28 @@ class TestCollisionWorld : public Test { // ----- Test AABB overlap ----- // - test(mWorld->testAABBOverlap(mSphereBody1, mBoxBody1)); + rp3d_test(mWorld->testAABBOverlap(mSphereBody1, mBoxBody1)); mOverlapCallback.reset(); mWorld->testOverlap(mSphereBody1, &mOverlapCallback); - test(mOverlapCallback.hasOverlap()); + rp3d_test(mOverlapCallback.hasOverlap()); mOverlapCallback.reset(); mWorld->testOverlap(mBoxBody1, &mOverlapCallback); - test(mOverlapCallback.hasOverlap()); + rp3d_test(mOverlapCallback.hasOverlap()); // ----- Test global collision test ----- // mCollisionCallback.reset(); mWorld->testCollision(&mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mBoxProxyShape1)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mBoxProxyShape1)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mSphereProxyShape1, mBoxProxyShape1); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mSphereBody1->getId(); @@ -877,7 +877,7 @@ class TestCollisionWorld : public Test { localBody1Point = std::sqrt(4.5f) * Vector3(1, -1, 0); localBody2Point = Vector3(-3, 3, 0); penetrationDepth = decimal(3.0) - std::sqrt(2); - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, swappedBodiesCollisionData ? localBody1Point : localBody2Point, penetrationDepth)); @@ -886,19 +886,19 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mSphereBody1, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mBoxProxyShape1)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mBoxProxyShape1)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mSphereProxyShape1, mBoxProxyShape1); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mSphereBody1->getId(); // Test contact points - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, swappedBodiesCollisionData ? localBody1Point : localBody2Point, penetrationDepth)); @@ -907,19 +907,19 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mBoxBody1, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mBoxProxyShape1)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mBoxProxyShape1)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mSphereProxyShape1, mBoxProxyShape1); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mSphereBody1->getId(); // Test contact points - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, swappedBodiesCollisionData ? localBody1Point : localBody2Point, penetrationDepth)); @@ -928,19 +928,19 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mSphereBody1, mBoxBody1, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mBoxProxyShape1)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mBoxProxyShape1)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mSphereProxyShape1, mBoxProxyShape1); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mSphereBody1->getId(); // Test contact points - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, swappedBodiesCollisionData ? localBody1Point : localBody2Point, penetrationDepth)); @@ -957,28 +957,28 @@ class TestCollisionWorld : public Test { // ----- Test AABB overlap ----- // - test(mWorld->testAABBOverlap(mSphereBody1, mBoxBody1)); + rp3d_test(mWorld->testAABBOverlap(mSphereBody1, mBoxBody1)); mOverlapCallback.reset(); mWorld->testOverlap(mSphereBody1, &mOverlapCallback); - test(mOverlapCallback.hasOverlap()); + rp3d_test(mOverlapCallback.hasOverlap()); mOverlapCallback.reset(); mWorld->testOverlap(mBoxBody1, &mOverlapCallback); - test(mOverlapCallback.hasOverlap()); + rp3d_test(mOverlapCallback.hasOverlap()); // ----- Test global collision test ----- // mCollisionCallback.reset(); mWorld->testCollision(&mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mBoxProxyShape1)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mBoxProxyShape1)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mSphereProxyShape1, mBoxProxyShape1); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mSphereBody1->getId(); @@ -987,7 +987,7 @@ class TestCollisionWorld : public Test { localBody1Point = std::sqrt(9.0f / 3.0f) * Vector3(1, -1, -1); localBody2Point = Vector3(-3, 3, 3); penetrationDepth = decimal(3.0) - std::sqrt(3); - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, swappedBodiesCollisionData ? localBody1Point : localBody2Point, penetrationDepth)); @@ -996,19 +996,19 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mSphereBody1, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mBoxProxyShape1)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mBoxProxyShape1)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mSphereProxyShape1, mBoxProxyShape1); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mSphereBody1->getId(); // Test contact points - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, swappedBodiesCollisionData ? localBody1Point : localBody2Point, penetrationDepth)); @@ -1017,19 +1017,19 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mBoxBody1, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mBoxProxyShape1)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mBoxProxyShape1)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mSphereProxyShape1, mBoxProxyShape1); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mSphereBody1->getId(); // Test contact points - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, swappedBodiesCollisionData ? localBody1Point : localBody2Point, penetrationDepth)); @@ -1038,19 +1038,19 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mSphereBody1, mBoxBody1, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mBoxProxyShape1)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mBoxProxyShape1)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mSphereProxyShape1, mBoxProxyShape1); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mSphereBody1->getId(); // Test contact points - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, swappedBodiesCollisionData ? localBody1Point : localBody2Point, penetrationDepth)); @@ -1077,28 +1077,28 @@ class TestCollisionWorld : public Test { // ----- Test AABB overlap ----- // - test(mWorld->testAABBOverlap(mSphereBody1, mCapsuleBody1)); + rp3d_test(mWorld->testAABBOverlap(mSphereBody1, mCapsuleBody1)); mOverlapCallback.reset(); mWorld->testOverlap(mSphereBody1, &mOverlapCallback); - test(mOverlapCallback.hasOverlap()); + rp3d_test(mOverlapCallback.hasOverlap()); mOverlapCallback.reset(); mWorld->testOverlap(mCapsuleBody1, &mOverlapCallback); - test(mOverlapCallback.hasOverlap()); + rp3d_test(mOverlapCallback.hasOverlap()); // ----- Test global collision test ----- // mCollisionCallback.reset(); mWorld->testCollision(&mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mCapsuleProxyShape1)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mCapsuleProxyShape1)); // Get collision data const CollisionData* collisionData = mCollisionCallback.getCollisionData(mSphereProxyShape1, mCapsuleProxyShape1); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response bool swappedBodiesCollisionData = collisionData->getBody1()->getId() != mSphereBody1->getId(); @@ -1107,7 +1107,7 @@ class TestCollisionWorld : public Test { Vector3 localBody1Point(0, -3, 0); Vector3 localBody2Point(0, 5, 0); decimal penetrationDepth = 2.0f; - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, swappedBodiesCollisionData ? localBody1Point : localBody2Point, penetrationDepth)); @@ -1116,19 +1116,19 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mSphereBody1, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mCapsuleProxyShape1)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mCapsuleProxyShape1)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mSphereProxyShape1, mCapsuleProxyShape1); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mSphereBody1->getId(); // Test contact points - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, swappedBodiesCollisionData ? localBody1Point : localBody2Point, penetrationDepth)); @@ -1137,19 +1137,19 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mCapsuleBody1, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mCapsuleProxyShape1)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mCapsuleProxyShape1)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mSphereProxyShape1, mCapsuleProxyShape1); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mSphereBody1->getId(); // Test contact points - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, swappedBodiesCollisionData ? localBody1Point : localBody2Point, penetrationDepth)); @@ -1158,19 +1158,19 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mSphereBody1, mCapsuleBody1, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mCapsuleProxyShape1)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mCapsuleProxyShape1)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mSphereProxyShape1, mCapsuleProxyShape1); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mSphereBody1->getId(); // Test contact points - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, swappedBodiesCollisionData ? localBody1Point : localBody2Point, penetrationDepth)); @@ -1187,28 +1187,28 @@ class TestCollisionWorld : public Test { // ----- Test AABB overlap ----- // - test(mWorld->testAABBOverlap(mSphereBody1, mCapsuleBody1)); + rp3d_test(mWorld->testAABBOverlap(mSphereBody1, mCapsuleBody1)); mOverlapCallback.reset(); mWorld->testOverlap(mSphereBody1, &mOverlapCallback); - test(mOverlapCallback.hasOverlap()); + rp3d_test(mOverlapCallback.hasOverlap()); mOverlapCallback.reset(); mWorld->testOverlap(mCapsuleBody1, &mOverlapCallback); - test(mOverlapCallback.hasOverlap()); + rp3d_test(mOverlapCallback.hasOverlap()); // ----- Test global collision test ----- // mCollisionCallback.reset(); mWorld->testCollision(&mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mCapsuleProxyShape1)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mCapsuleProxyShape1)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mSphereProxyShape1, mCapsuleProxyShape1); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mSphereBody1->getId(); @@ -1217,7 +1217,7 @@ class TestCollisionWorld : public Test { localBody1Point = Vector3(3, 0, 0); localBody2Point = Vector3(-2, 1, 0); penetrationDepth = decimal(1.0); - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, swappedBodiesCollisionData ? localBody1Point : localBody2Point, penetrationDepth)); @@ -1226,19 +1226,19 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mSphereBody1, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mCapsuleProxyShape1)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mCapsuleProxyShape1)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mSphereProxyShape1, mCapsuleProxyShape1); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mSphereBody1->getId(); // Test contact points - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, swappedBodiesCollisionData ? localBody1Point : localBody2Point, penetrationDepth)); @@ -1247,19 +1247,19 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mCapsuleBody1, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mCapsuleProxyShape1)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mCapsuleProxyShape1)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mSphereProxyShape1, mCapsuleProxyShape1); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mSphereBody1->getId(); // Test contact points - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, swappedBodiesCollisionData ? localBody1Point : localBody2Point, penetrationDepth)); @@ -1268,19 +1268,19 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mSphereBody1, mCapsuleBody1, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mCapsuleProxyShape1)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mCapsuleProxyShape1)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mSphereProxyShape1, mCapsuleProxyShape1); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mSphereBody1->getId(); // Test contact points - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, swappedBodiesCollisionData ? localBody1Point : localBody2Point, penetrationDepth)); @@ -1307,28 +1307,28 @@ class TestCollisionWorld : public Test { // ----- Test AABB overlap ----- // - test(mWorld->testAABBOverlap(mSphereBody1, mConvexMeshBody1)); + rp3d_test(mWorld->testAABBOverlap(mSphereBody1, mConvexMeshBody1)); mOverlapCallback.reset(); mWorld->testOverlap(mSphereBody1, &mOverlapCallback); - test(mOverlapCallback.hasOverlap()); + rp3d_test(mOverlapCallback.hasOverlap()); mOverlapCallback.reset(); mWorld->testOverlap(mConvexMeshBody1, &mOverlapCallback); - test(mOverlapCallback.hasOverlap()); + rp3d_test(mOverlapCallback.hasOverlap()); // ----- Test global collision test ----- // mCollisionCallback.reset(); mWorld->testCollision(&mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mConvexMeshProxyShape1)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mConvexMeshProxyShape1)); // Get collision data const CollisionData* collisionData = mCollisionCallback.getCollisionData(mSphereProxyShape1, mConvexMeshProxyShape1); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response bool swappedBodiesCollisionData = collisionData->getBody1()->getId() != mSphereBody1->getId(); @@ -1337,7 +1337,7 @@ class TestCollisionWorld : public Test { Vector3 localBody1Point(3, 0, 0); Vector3 localBody2Point(-3, 0, 0); decimal penetrationDepth = 2.0f; - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, swappedBodiesCollisionData ? localBody1Point : localBody2Point, penetrationDepth)); @@ -1346,19 +1346,19 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mSphereBody1, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mConvexMeshProxyShape1)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mConvexMeshProxyShape1)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mSphereProxyShape1, mConvexMeshProxyShape1); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mSphereBody1->getId(); // Test contact points - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, swappedBodiesCollisionData ? localBody1Point : localBody2Point, penetrationDepth)); @@ -1367,19 +1367,19 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mConvexMeshBody1, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mConvexMeshProxyShape1)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mConvexMeshProxyShape1)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mSphereProxyShape1, mConvexMeshProxyShape1); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mSphereBody1->getId(); // Test contact points - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, swappedBodiesCollisionData ? localBody1Point : localBody2Point, penetrationDepth)); @@ -1388,19 +1388,19 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mSphereBody1, mConvexMeshBody1, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mConvexMeshProxyShape1)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mConvexMeshProxyShape1)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mSphereProxyShape1, mConvexMeshProxyShape1); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mSphereBody1->getId(); // Test contact points - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, swappedBodiesCollisionData ? localBody1Point : localBody2Point, penetrationDepth)); @@ -1417,28 +1417,28 @@ class TestCollisionWorld : public Test { // ----- Test AABB overlap ----- // - test(mWorld->testAABBOverlap(mSphereBody1, mConvexMeshBody1)); + rp3d_test(mWorld->testAABBOverlap(mSphereBody1, mConvexMeshBody1)); mOverlapCallback.reset(); mWorld->testOverlap(mSphereBody1, &mOverlapCallback); - test(mOverlapCallback.hasOverlap()); + rp3d_test(mOverlapCallback.hasOverlap()); mOverlapCallback.reset(); mWorld->testOverlap(mConvexMeshBody1, &mOverlapCallback); - test(mOverlapCallback.hasOverlap()); + rp3d_test(mOverlapCallback.hasOverlap()); // ----- Test global collision test ----- // mCollisionCallback.reset(); mWorld->testCollision(&mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mConvexMeshProxyShape1)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mConvexMeshProxyShape1)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mSphereProxyShape1, mConvexMeshProxyShape1); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mSphereBody1->getId(); @@ -1447,7 +1447,7 @@ class TestCollisionWorld : public Test { localBody1Point = std::sqrt(4.5f) * Vector3(1, -1, 0); localBody2Point = Vector3(-3, 3, 0); penetrationDepth = decimal(3.0) - std::sqrt(2); - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, swappedBodiesCollisionData ? localBody1Point : localBody2Point, penetrationDepth)); @@ -1456,19 +1456,19 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mSphereBody1, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mConvexMeshProxyShape1)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mConvexMeshProxyShape1)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mSphereProxyShape1, mConvexMeshProxyShape1); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mSphereBody1->getId(); // Test contact points - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, swappedBodiesCollisionData ? localBody1Point : localBody2Point, penetrationDepth)); @@ -1477,19 +1477,19 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mConvexMeshBody1, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mConvexMeshProxyShape1)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mConvexMeshProxyShape1)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mSphereProxyShape1, mConvexMeshProxyShape1); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mSphereBody1->getId(); // Test contact points - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, swappedBodiesCollisionData ? localBody1Point : localBody2Point, penetrationDepth)); @@ -1498,19 +1498,19 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mSphereBody1, mConvexMeshBody1, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mConvexMeshProxyShape1)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mConvexMeshProxyShape1)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mSphereProxyShape1, mConvexMeshProxyShape1); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mSphereBody1->getId(); // Test contact points - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, swappedBodiesCollisionData ? localBody1Point : localBody2Point, penetrationDepth)); @@ -1527,28 +1527,28 @@ class TestCollisionWorld : public Test { // ----- Test AABB overlap ----- // - test(mWorld->testAABBOverlap(mSphereBody1, mConvexMeshBody1)); + rp3d_test(mWorld->testAABBOverlap(mSphereBody1, mConvexMeshBody1)); mOverlapCallback.reset(); mWorld->testOverlap(mSphereBody1, &mOverlapCallback); - test(mOverlapCallback.hasOverlap()); + rp3d_test(mOverlapCallback.hasOverlap()); mOverlapCallback.reset(); mWorld->testOverlap(mConvexMeshBody1, &mOverlapCallback); - test(mOverlapCallback.hasOverlap()); + rp3d_test(mOverlapCallback.hasOverlap()); // ----- Test global collision test ----- // mCollisionCallback.reset(); mWorld->testCollision(&mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mConvexMeshProxyShape1)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mConvexMeshProxyShape1)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mSphereProxyShape1, mConvexMeshProxyShape1); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mSphereBody1->getId(); @@ -1557,7 +1557,7 @@ class TestCollisionWorld : public Test { localBody1Point = std::sqrt(9.0f / 3.0f) * Vector3(1, -1, -1); localBody2Point = Vector3(-3, 3, 3); penetrationDepth = decimal(3.0) - std::sqrt(3); - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, swappedBodiesCollisionData ? localBody1Point : localBody2Point, penetrationDepth)); @@ -1566,19 +1566,19 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mSphereBody1, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mConvexMeshProxyShape1)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mConvexMeshProxyShape1)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mSphereProxyShape1, mConvexMeshProxyShape1); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mSphereBody1->getId(); // Test contact points - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, swappedBodiesCollisionData ? localBody1Point : localBody2Point, penetrationDepth)); @@ -1587,19 +1587,19 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mConvexMeshBody1, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mConvexMeshProxyShape1)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mConvexMeshProxyShape1)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mSphereProxyShape1, mConvexMeshProxyShape1); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mSphereBody1->getId(); // Test contact points - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, swappedBodiesCollisionData ? localBody1Point : localBody2Point, penetrationDepth)); @@ -1608,19 +1608,19 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mSphereBody1, mConvexMeshBody1, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mConvexMeshProxyShape1)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mConvexMeshProxyShape1)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mSphereProxyShape1, mConvexMeshProxyShape1); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mSphereBody1->getId(); // Test contact points - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, swappedBodiesCollisionData ? localBody1Point : localBody2Point, penetrationDepth)); @@ -1647,28 +1647,28 @@ class TestCollisionWorld : public Test { // ----- Test AABB overlap ----- // - test(mWorld->testAABBOverlap(mSphereBody1, mConcaveMeshBody)); + rp3d_test(mWorld->testAABBOverlap(mSphereBody1, mConcaveMeshBody)); mOverlapCallback.reset(); mWorld->testOverlap(mSphereBody1, &mOverlapCallback); - test(mOverlapCallback.hasOverlap()); + rp3d_test(mOverlapCallback.hasOverlap()); mOverlapCallback.reset(); mWorld->testOverlap(mConcaveMeshBody, &mOverlapCallback); - test(mOverlapCallback.hasOverlap()); + rp3d_test(mOverlapCallback.hasOverlap()); // ----- Test global collision test ----- // mCollisionCallback.reset(); mWorld->testCollision(&mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mConcaveMeshProxyShape)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mConcaveMeshProxyShape)); // Get collision data const CollisionData* collisionData = mCollisionCallback.getCollisionData(mSphereProxyShape1, mConcaveMeshProxyShape); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response bool swappedBodiesCollisionData = collisionData->getBody1()->getId() != mSphereBody1->getId(); @@ -1677,7 +1677,7 @@ class TestCollisionWorld : public Test { Vector3 localBody1Point(0, -3, 0); Vector3 localBody2Point(0, 0, 0); decimal penetrationDepth = 0.02f; - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, swappedBodiesCollisionData ? localBody1Point : localBody2Point, penetrationDepth)); @@ -1686,19 +1686,19 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mSphereBody1, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mConcaveMeshProxyShape)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mConcaveMeshProxyShape)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mSphereProxyShape1, mConcaveMeshProxyShape); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mSphereBody1->getId(); // Test contact points - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, swappedBodiesCollisionData ? localBody1Point : localBody2Point, penetrationDepth)); @@ -1707,19 +1707,19 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mConcaveMeshBody, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mConcaveMeshProxyShape)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mConcaveMeshProxyShape)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mSphereProxyShape1, mConcaveMeshProxyShape); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mSphereBody1->getId(); // Test contact points - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, swappedBodiesCollisionData ? localBody1Point : localBody2Point, penetrationDepth)); @@ -1728,19 +1728,19 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mSphereBody1, mConcaveMeshBody, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mConcaveMeshProxyShape)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mSphereProxyShape1, mConcaveMeshProxyShape)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mSphereProxyShape1, mConcaveMeshProxyShape); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mSphereBody1->getId(); // Test contact points - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, swappedBodiesCollisionData ? localBody1Point : localBody2Point, penetrationDepth)); @@ -1767,28 +1767,28 @@ class TestCollisionWorld : public Test { // ----- Test AABB overlap ----- // - test(mWorld->testAABBOverlap(mBoxBody1, mBoxBody2)); + rp3d_test(mWorld->testAABBOverlap(mBoxBody1, mBoxBody2)); mOverlapCallback.reset(); mWorld->testOverlap(mBoxBody1, &mOverlapCallback); - test(mOverlapCallback.hasOverlap()); + rp3d_test(mOverlapCallback.hasOverlap()); mOverlapCallback.reset(); mWorld->testOverlap(mBoxBody2, &mOverlapCallback); - test(mOverlapCallback.hasOverlap()); + rp3d_test(mOverlapCallback.hasOverlap()); // ----- Test global collision test ----- // mCollisionCallback.reset(); mWorld->testCollision(&mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mBoxProxyShape1, mBoxProxyShape2)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mBoxProxyShape1, mBoxProxyShape2)); // Get collision data const CollisionData* collisionData = mCollisionCallback.getCollisionData(mBoxProxyShape1, mBoxProxyShape2); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 4); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 4); // True if the bodies are swapped in the collision callback response bool swappedBodiesCollisionData = collisionData->getBody1()->getId() != mBoxBody1->getId(); @@ -1797,25 +1797,25 @@ class TestCollisionWorld : public Test { Vector3 localBody1Point1(-3, -2, -2); Vector3 localBody2Point1(4, 2, 8); decimal penetrationDepth1 = 0.5f; - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point1 : localBody1Point1, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point1 : localBody1Point1, swappedBodiesCollisionData ? localBody1Point1 : localBody2Point1, penetrationDepth1)); Vector3 localBody1Point2(-3, -2, -3); Vector3 localBody2Point2(4, 2, 7); decimal penetrationDepth2 = 0.5f; - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point2 : localBody1Point2, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point2 : localBody1Point2, swappedBodiesCollisionData ? localBody1Point2 : localBody2Point2, penetrationDepth2)); Vector3 localBody1Point3(-3, -3, -2); Vector3 localBody2Point3(4, 1, 8); decimal penetrationDepth3 = 0.5f; - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point3 : localBody1Point3, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point3 : localBody1Point3, swappedBodiesCollisionData ? localBody1Point3 : localBody2Point3, penetrationDepth3)); Vector3 localBody1Point4(-3, -3, -3); Vector3 localBody2Point4(4, 1, 7); decimal penetrationDepth4 = 0.5f; - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point4 : localBody1Point4, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point4 : localBody1Point4, swappedBodiesCollisionData ? localBody1Point4 : localBody2Point4, penetrationDepth4)); @@ -1824,28 +1824,28 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mBoxBody1, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mBoxProxyShape1, mBoxProxyShape2)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mBoxProxyShape1, mBoxProxyShape2)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mBoxProxyShape1, mBoxProxyShape2); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 4); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 4); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mBoxBody1->getId(); // Test contact points - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point1 : localBody1Point1, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point1 : localBody1Point1, swappedBodiesCollisionData ? localBody1Point1 : localBody2Point1, penetrationDepth1)); - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point2 : localBody1Point2, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point2 : localBody1Point2, swappedBodiesCollisionData ? localBody1Point2 : localBody2Point2, penetrationDepth2)); - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point3 : localBody1Point3, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point3 : localBody1Point3, swappedBodiesCollisionData ? localBody1Point3 : localBody2Point3, penetrationDepth3)); - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point4 : localBody1Point4, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point4 : localBody1Point4, swappedBodiesCollisionData ? localBody1Point4 : localBody2Point4, penetrationDepth4)); // ----- Test collision against body 2 only ----- // @@ -1853,28 +1853,28 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mBoxBody2, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mBoxProxyShape1, mBoxProxyShape2)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mBoxProxyShape1, mBoxProxyShape2)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mBoxProxyShape1, mBoxProxyShape2); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 4); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 4); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mBoxBody1->getId(); // Test contact points - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point1 : localBody1Point1, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point1 : localBody1Point1, swappedBodiesCollisionData ? localBody1Point1 : localBody2Point1, penetrationDepth1)); - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point2 : localBody1Point2, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point2 : localBody1Point2, swappedBodiesCollisionData ? localBody1Point2 : localBody2Point2, penetrationDepth2)); - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point3 : localBody1Point3, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point3 : localBody1Point3, swappedBodiesCollisionData ? localBody1Point3 : localBody2Point3, penetrationDepth3)); - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point4 : localBody1Point4, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point4 : localBody1Point4, swappedBodiesCollisionData ? localBody1Point4 : localBody2Point4, penetrationDepth4)); @@ -1883,28 +1883,28 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mBoxBody1, mBoxBody2, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mBoxProxyShape1, mBoxProxyShape2)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mBoxProxyShape1, mBoxProxyShape2)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mBoxProxyShape1, mBoxProxyShape2); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 4); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 4); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mBoxBody1->getId(); // Test contact points - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point1 : localBody1Point1, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point1 : localBody1Point1, swappedBodiesCollisionData ? localBody1Point1 : localBody2Point1, penetrationDepth1)); - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point2 : localBody1Point2, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point2 : localBody1Point2, swappedBodiesCollisionData ? localBody1Point2 : localBody2Point2, penetrationDepth2)); - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point3 : localBody1Point3, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point3 : localBody1Point3, swappedBodiesCollisionData ? localBody1Point3 : localBody2Point3, penetrationDepth3)); - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point4 : localBody1Point4, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point4 : localBody1Point4, swappedBodiesCollisionData ? localBody1Point4 : localBody2Point4, penetrationDepth4)); @@ -1931,28 +1931,28 @@ class TestCollisionWorld : public Test { // ----- Test AABB overlap ----- // - test(mWorld->testAABBOverlap(mBoxBody1, mConvexMeshBody2)); + rp3d_test(mWorld->testAABBOverlap(mBoxBody1, mConvexMeshBody2)); mOverlapCallback.reset(); mWorld->testOverlap(mBoxBody1, &mOverlapCallback); - test(mOverlapCallback.hasOverlap()); + rp3d_test(mOverlapCallback.hasOverlap()); mOverlapCallback.reset(); mWorld->testOverlap(mConvexMeshBody2, &mOverlapCallback); - test(mOverlapCallback.hasOverlap()); + rp3d_test(mOverlapCallback.hasOverlap()); // ----- Test global collision test ----- // mCollisionCallback.reset(); mWorld->testCollision(&mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mBoxProxyShape1, mConvexMeshProxyShape2)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mBoxProxyShape1, mConvexMeshProxyShape2)); // Get collision data const CollisionData* collisionData = mCollisionCallback.getCollisionData(mBoxProxyShape1, mConvexMeshProxyShape2); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 4); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 4); // True if the bodies are swapped in the collision callback response bool swappedBodiesCollisionData = collisionData->getBody1()->getId() != mBoxBody1->getId(); @@ -1961,25 +1961,25 @@ class TestCollisionWorld : public Test { Vector3 localBody1Point1(-3, -2, -2); Vector3 localBody2Point1(4, 2, 8); decimal penetrationDepth1 = 0.5f; - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point1 : localBody1Point1, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point1 : localBody1Point1, swappedBodiesCollisionData ? localBody1Point1 : localBody2Point1, penetrationDepth1)); Vector3 localBody1Point2(-3, -2, -3); Vector3 localBody2Point2(4, 2, 7); decimal penetrationDepth2 = 0.5f; - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point2 : localBody1Point2, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point2 : localBody1Point2, swappedBodiesCollisionData ? localBody1Point2 : localBody2Point2, penetrationDepth2)); Vector3 localBody1Point3(-3, -3, -2); Vector3 localBody2Point3(4, 1, 8); decimal penetrationDepth3 = 0.5f; - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point3 : localBody1Point3, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point3 : localBody1Point3, swappedBodiesCollisionData ? localBody1Point3 : localBody2Point3, penetrationDepth3)); Vector3 localBody1Point4(-3, -3, -3); Vector3 localBody2Point4(4, 1, 7); decimal penetrationDepth4 = 0.5f; - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point4 : localBody1Point4, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point4 : localBody1Point4, swappedBodiesCollisionData ? localBody1Point4 : localBody2Point4, penetrationDepth4)); @@ -1988,28 +1988,28 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mBoxBody1, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mBoxProxyShape1, mConvexMeshProxyShape2)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mBoxProxyShape1, mConvexMeshProxyShape2)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mBoxProxyShape1, mConvexMeshProxyShape2); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 4); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 4); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mBoxBody1->getId(); // Test contact points - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point1 : localBody1Point1, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point1 : localBody1Point1, swappedBodiesCollisionData ? localBody1Point1 : localBody2Point1, penetrationDepth1)); - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point2 : localBody1Point2, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point2 : localBody1Point2, swappedBodiesCollisionData ? localBody1Point2 : localBody2Point2, penetrationDepth2)); - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point3 : localBody1Point3, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point3 : localBody1Point3, swappedBodiesCollisionData ? localBody1Point3 : localBody2Point3, penetrationDepth3)); - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point4 : localBody1Point4, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point4 : localBody1Point4, swappedBodiesCollisionData ? localBody1Point4 : localBody2Point4, penetrationDepth4)); // ----- Test collision against body 2 only ----- // @@ -2017,28 +2017,28 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mConvexMeshBody2, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mBoxProxyShape1, mConvexMeshProxyShape2)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mBoxProxyShape1, mConvexMeshProxyShape2)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mBoxProxyShape1, mConvexMeshProxyShape2); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 4); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 4); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mBoxBody1->getId(); // Test contact points - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point1 : localBody1Point1, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point1 : localBody1Point1, swappedBodiesCollisionData ? localBody1Point1 : localBody2Point1, penetrationDepth1)); - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point2 : localBody1Point2, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point2 : localBody1Point2, swappedBodiesCollisionData ? localBody1Point2 : localBody2Point2, penetrationDepth2)); - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point3 : localBody1Point3, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point3 : localBody1Point3, swappedBodiesCollisionData ? localBody1Point3 : localBody2Point3, penetrationDepth3)); - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point4 : localBody1Point4, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point4 : localBody1Point4, swappedBodiesCollisionData ? localBody1Point4 : localBody2Point4, penetrationDepth4)); @@ -2047,28 +2047,28 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mBoxBody1, mConvexMeshBody2, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mBoxProxyShape1, mConvexMeshProxyShape2)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mBoxProxyShape1, mConvexMeshProxyShape2)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mBoxProxyShape1, mConvexMeshProxyShape2); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 4); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 4); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mBoxBody1->getId(); // Test contact points - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point1 : localBody1Point1, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point1 : localBody1Point1, swappedBodiesCollisionData ? localBody1Point1 : localBody2Point1, penetrationDepth1)); - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point2 : localBody1Point2, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point2 : localBody1Point2, swappedBodiesCollisionData ? localBody1Point2 : localBody2Point2, penetrationDepth2)); - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point3 : localBody1Point3, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point3 : localBody1Point3, swappedBodiesCollisionData ? localBody1Point3 : localBody2Point3, penetrationDepth3)); - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point4 : localBody1Point4, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point4 : localBody1Point4, swappedBodiesCollisionData ? localBody1Point4 : localBody2Point4, penetrationDepth4)); @@ -2095,28 +2095,28 @@ class TestCollisionWorld : public Test { // ----- Test AABB overlap ----- // - test(mWorld->testAABBOverlap(mConvexMeshBody1, mConvexMeshBody2)); + rp3d_test(mWorld->testAABBOverlap(mConvexMeshBody1, mConvexMeshBody2)); mOverlapCallback.reset(); mWorld->testOverlap(mConvexMeshBody1, &mOverlapCallback); - test(mOverlapCallback.hasOverlap()); + rp3d_test(mOverlapCallback.hasOverlap()); mOverlapCallback.reset(); mWorld->testOverlap(mConvexMeshBody2, &mOverlapCallback); - test(mOverlapCallback.hasOverlap()); + rp3d_test(mOverlapCallback.hasOverlap()); // ----- Test global collision test ----- // mCollisionCallback.reset(); mWorld->testCollision(&mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mConvexMeshProxyShape1, mConvexMeshProxyShape2)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mConvexMeshProxyShape1, mConvexMeshProxyShape2)); // Get collision data const CollisionData* collisionData = mCollisionCallback.getCollisionData(mConvexMeshProxyShape1, mConvexMeshProxyShape2); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 4); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 4); // True if the bodies are swapped in the collision callback response bool swappedBodiesCollisionData = collisionData->getBody1()->getId() != mConvexMeshBody1->getId(); @@ -2125,25 +2125,25 @@ class TestCollisionWorld : public Test { Vector3 localBody1Point1(-3, -2, -2); Vector3 localBody2Point1(4, 2, 8); decimal penetrationDepth1 = 0.5f; - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point1 : localBody1Point1, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point1 : localBody1Point1, swappedBodiesCollisionData ? localBody1Point1 : localBody2Point1, penetrationDepth1)); Vector3 localBody1Point2(-3, -2, -3); Vector3 localBody2Point2(4, 2, 7); decimal penetrationDepth2 = 0.5f; - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point2 : localBody1Point2, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point2 : localBody1Point2, swappedBodiesCollisionData ? localBody1Point2 : localBody2Point2, penetrationDepth2)); Vector3 localBody1Point3(-3, -3, -2); Vector3 localBody2Point3(4, 1, 8); decimal penetrationDepth3 = 0.5f; - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point3 : localBody1Point3, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point3 : localBody1Point3, swappedBodiesCollisionData ? localBody1Point3 : localBody2Point3, penetrationDepth3)); Vector3 localBody1Point4(-3, -3, -3); Vector3 localBody2Point4(4, 1, 7); decimal penetrationDepth4 = 0.5f; - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point4 : localBody1Point4, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point4 : localBody1Point4, swappedBodiesCollisionData ? localBody1Point4 : localBody2Point4, penetrationDepth4)); @@ -2152,28 +2152,28 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mConvexMeshBody1, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mConvexMeshProxyShape1, mConvexMeshProxyShape2)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mConvexMeshProxyShape1, mConvexMeshProxyShape2)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mConvexMeshProxyShape1, mConvexMeshProxyShape2); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 4); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 4); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mConvexMeshBody1->getId(); // Test contact points - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point1 : localBody1Point1, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point1 : localBody1Point1, swappedBodiesCollisionData ? localBody1Point1 : localBody2Point1, penetrationDepth1)); - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point2 : localBody1Point2, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point2 : localBody1Point2, swappedBodiesCollisionData ? localBody1Point2 : localBody2Point2, penetrationDepth2)); - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point3 : localBody1Point3, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point3 : localBody1Point3, swappedBodiesCollisionData ? localBody1Point3 : localBody2Point3, penetrationDepth3)); - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point4 : localBody1Point4, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point4 : localBody1Point4, swappedBodiesCollisionData ? localBody1Point4 : localBody2Point4, penetrationDepth4)); // ----- Test collision against body 2 only ----- // @@ -2181,28 +2181,28 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mConvexMeshBody2, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mConvexMeshProxyShape1, mConvexMeshProxyShape2)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mConvexMeshProxyShape1, mConvexMeshProxyShape2)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mConvexMeshProxyShape1, mConvexMeshProxyShape2); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 4); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 4); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mConvexMeshBody1->getId(); // Test contact points - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point1 : localBody1Point1, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point1 : localBody1Point1, swappedBodiesCollisionData ? localBody1Point1 : localBody2Point1, penetrationDepth1)); - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point2 : localBody1Point2, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point2 : localBody1Point2, swappedBodiesCollisionData ? localBody1Point2 : localBody2Point2, penetrationDepth2)); - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point3 : localBody1Point3, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point3 : localBody1Point3, swappedBodiesCollisionData ? localBody1Point3 : localBody2Point3, penetrationDepth3)); - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point4 : localBody1Point4, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point4 : localBody1Point4, swappedBodiesCollisionData ? localBody1Point4 : localBody2Point4, penetrationDepth4)); @@ -2211,28 +2211,28 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mConvexMeshBody1, mConvexMeshBody2, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mConvexMeshProxyShape1, mConvexMeshProxyShape2)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mConvexMeshProxyShape1, mConvexMeshProxyShape2)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mConvexMeshProxyShape1, mConvexMeshProxyShape2); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 4); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 4); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mConvexMeshBody1->getId(); // Test contact points - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point1 : localBody1Point1, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point1 : localBody1Point1, swappedBodiesCollisionData ? localBody1Point1 : localBody2Point1, penetrationDepth1)); - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point2 : localBody1Point2, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point2 : localBody1Point2, swappedBodiesCollisionData ? localBody1Point2 : localBody2Point2, penetrationDepth2)); - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point3 : localBody1Point3, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point3 : localBody1Point3, swappedBodiesCollisionData ? localBody1Point3 : localBody2Point3, penetrationDepth3)); - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point4 : localBody1Point4, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point4 : localBody1Point4, swappedBodiesCollisionData ? localBody1Point4 : localBody2Point4, penetrationDepth4)); @@ -2259,28 +2259,28 @@ class TestCollisionWorld : public Test { // ----- Test AABB overlap ----- // - test(mWorld->testAABBOverlap(mBoxBody1, mCapsuleBody1)); + rp3d_test(mWorld->testAABBOverlap(mBoxBody1, mCapsuleBody1)); mOverlapCallback.reset(); mWorld->testOverlap(mBoxBody1, &mOverlapCallback); - test(mOverlapCallback.hasOverlap()); + rp3d_test(mOverlapCallback.hasOverlap()); mOverlapCallback.reset(); mWorld->testOverlap(mCapsuleBody1, &mOverlapCallback); - test(mOverlapCallback.hasOverlap()); + rp3d_test(mOverlapCallback.hasOverlap()); // ----- Test global collision test ----- // mCollisionCallback.reset(); mWorld->testCollision(&mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mBoxProxyShape1, mCapsuleProxyShape1)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mBoxProxyShape1, mCapsuleProxyShape1)); // Get collision data const CollisionData* collisionData = mCollisionCallback.getCollisionData(mBoxProxyShape1, mCapsuleProxyShape1); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response bool swappedBodiesCollisionData = collisionData->getBody1()->getId() != mBoxBody1->getId(); @@ -2289,7 +2289,7 @@ class TestCollisionWorld : public Test { Vector3 localBody1Point1(3, 1, 0); Vector3 localBody2Point1(0, 5, 0); decimal penetrationDepth1 = 1.0f; - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point1 : localBody1Point1, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point1 : localBody1Point1, swappedBodiesCollisionData ? localBody1Point1 : localBody2Point1, penetrationDepth1)); // ----- Test collision against body 1 only ----- // @@ -2297,19 +2297,19 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mBoxBody1, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mBoxProxyShape1, mCapsuleProxyShape1)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mBoxProxyShape1, mCapsuleProxyShape1)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mBoxProxyShape1, mCapsuleProxyShape1); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mBoxBody1->getId(); // Test contact points - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point1 : localBody1Point1, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point1 : localBody1Point1, swappedBodiesCollisionData ? localBody1Point1 : localBody2Point1, penetrationDepth1)); @@ -2318,19 +2318,19 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mCapsuleBody1, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mBoxProxyShape1, mCapsuleProxyShape1)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mBoxProxyShape1, mCapsuleProxyShape1)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mBoxProxyShape1, mCapsuleProxyShape1); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mBoxBody1->getId(); // Test contact points - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point1 : localBody1Point1, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point1 : localBody1Point1, swappedBodiesCollisionData ? localBody1Point1 : localBody2Point1, penetrationDepth1)); @@ -2339,19 +2339,19 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mBoxBody1, mCapsuleBody1, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mBoxProxyShape1, mCapsuleProxyShape1)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mBoxProxyShape1, mCapsuleProxyShape1)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mBoxProxyShape1, mCapsuleProxyShape1); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mBoxBody1->getId(); // Test contact points - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point1 : localBody1Point1, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point1 : localBody1Point1, swappedBodiesCollisionData ? localBody1Point1 : localBody2Point1, penetrationDepth1)); @@ -2378,28 +2378,28 @@ class TestCollisionWorld : public Test { // ----- Test AABB overlap ----- // - test(mWorld->testAABBOverlap(mConvexMeshBody1, mCapsuleBody1)); + rp3d_test(mWorld->testAABBOverlap(mConvexMeshBody1, mCapsuleBody1)); mOverlapCallback.reset(); mWorld->testOverlap(mConvexMeshBody1, &mOverlapCallback); - test(mOverlapCallback.hasOverlap()); + rp3d_test(mOverlapCallback.hasOverlap()); mOverlapCallback.reset(); mWorld->testOverlap(mCapsuleBody1, &mOverlapCallback); - test(mOverlapCallback.hasOverlap()); + rp3d_test(mOverlapCallback.hasOverlap()); // ----- Test global collision test ----- // mCollisionCallback.reset(); mWorld->testCollision(&mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mConvexMeshProxyShape1, mCapsuleProxyShape1)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mConvexMeshProxyShape1, mCapsuleProxyShape1)); // Get collision data const CollisionData* collisionData = mCollisionCallback.getCollisionData(mConvexMeshProxyShape1, mCapsuleProxyShape1); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response bool swappedBodiesCollisionData = collisionData->getBody1()->getId() != mConvexMeshBody1->getId(); @@ -2408,7 +2408,7 @@ class TestCollisionWorld : public Test { Vector3 localBody1Point1(3, 1, 0); Vector3 localBody2Point1(0, 5, 0); decimal penetrationDepth1 = 1.0f; - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point1 : localBody1Point1, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point1 : localBody1Point1, swappedBodiesCollisionData ? localBody1Point1 : localBody2Point1, penetrationDepth1)); // ----- Test collision against body 1 only ----- // @@ -2416,19 +2416,19 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mConvexMeshBody1, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mConvexMeshProxyShape1, mCapsuleProxyShape1)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mConvexMeshProxyShape1, mCapsuleProxyShape1)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mConvexMeshProxyShape1, mCapsuleProxyShape1); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mConvexMeshBody1->getId(); // Test contact points - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point1 : localBody1Point1, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point1 : localBody1Point1, swappedBodiesCollisionData ? localBody1Point1 : localBody2Point1, penetrationDepth1)); @@ -2437,19 +2437,19 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mCapsuleBody1, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mConvexMeshProxyShape1, mCapsuleProxyShape1)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mConvexMeshProxyShape1, mCapsuleProxyShape1)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mConvexMeshProxyShape1, mCapsuleProxyShape1); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mConvexMeshBody1->getId(); // Test contact points - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point1 : localBody1Point1, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point1 : localBody1Point1, swappedBodiesCollisionData ? localBody1Point1 : localBody2Point1, penetrationDepth1)); @@ -2458,19 +2458,19 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mConvexMeshBody1, mCapsuleBody1, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mConvexMeshProxyShape1, mCapsuleProxyShape1)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mConvexMeshProxyShape1, mCapsuleProxyShape1)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mConvexMeshProxyShape1, mCapsuleProxyShape1); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mConvexMeshBody1->getId(); // Test contact points - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point1 : localBody1Point1, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point1 : localBody1Point1, swappedBodiesCollisionData ? localBody1Point1 : localBody2Point1, penetrationDepth1)); @@ -2497,31 +2497,31 @@ class TestCollisionWorld : public Test { // ----- Test AABB overlap ----- // - test(mWorld->testAABBOverlap(mBoxBody1, mConcaveMeshBody)); + rp3d_test(mWorld->testAABBOverlap(mBoxBody1, mConcaveMeshBody)); mOverlapCallback.reset(); mWorld->testOverlap(mBoxBody1, &mOverlapCallback); - test(mOverlapCallback.hasOverlap()); + rp3d_test(mOverlapCallback.hasOverlap()); mOverlapCallback.reset(); mWorld->testOverlap(mConcaveMeshBody, &mOverlapCallback); - test(mOverlapCallback.hasOverlap()); + rp3d_test(mOverlapCallback.hasOverlap()); // ----- Test global collision test ----- // mCollisionCallback.reset(); mWorld->testCollision(&mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mBoxProxyShape1, mConcaveMeshProxyShape)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mBoxProxyShape1, mConcaveMeshProxyShape)); // Get collision data const CollisionData* collisionData = mCollisionCallback.getCollisionData(mBoxProxyShape1, mConcaveMeshProxyShape); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 4); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 4); for (size_t i=0; icontactManifolds[0].contactPoints.size(); i++) { - test(approxEqual(collisionData->contactManifolds[0].contactPoints[i].penetrationDepth, 1.0f)); + rp3d_test(approxEqual(collisionData->contactManifolds[0].contactPoints[i].penetrationDepth, 1.0f)); } // ----- Test collision against body 1 only ----- // @@ -2529,16 +2529,16 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mBoxBody1, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mBoxProxyShape1, mConcaveMeshProxyShape)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mBoxProxyShape1, mConcaveMeshProxyShape)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mBoxProxyShape1, mConcaveMeshProxyShape); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 4); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 4); for (size_t i=0; icontactManifolds[0].contactPoints.size(); i++) { - test(approxEqual(collisionData->contactManifolds[0].contactPoints[i].penetrationDepth, 1.0f)); + rp3d_test(approxEqual(collisionData->contactManifolds[0].contactPoints[i].penetrationDepth, 1.0f)); } // ----- Test collision against body 2 only ----- // @@ -2546,16 +2546,16 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mConcaveMeshBody, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mBoxProxyShape1, mConcaveMeshProxyShape)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mBoxProxyShape1, mConcaveMeshProxyShape)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mBoxProxyShape1, mConcaveMeshProxyShape); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 4); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 4); for (size_t i=0; icontactManifolds[0].contactPoints.size(); i++) { - test(approxEqual(collisionData->contactManifolds[0].contactPoints[i].penetrationDepth, 1.0f)); + rp3d_test(approxEqual(collisionData->contactManifolds[0].contactPoints[i].penetrationDepth, 1.0f)); } // ----- Test collision against selected body 1 and 2 ----- // @@ -2563,17 +2563,17 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mBoxBody1, mConcaveMeshBody, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mBoxProxyShape1, mConcaveMeshProxyShape)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mBoxProxyShape1, mConcaveMeshProxyShape)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mBoxProxyShape1, mConcaveMeshProxyShape); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 4); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 4); // Test contact points for (size_t i=0; icontactManifolds[0].contactPoints.size(); i++) { - test(approxEqual(collisionData->contactManifolds[0].contactPoints[i].penetrationDepth, 1.0f)); + rp3d_test(approxEqual(collisionData->contactManifolds[0].contactPoints[i].penetrationDepth, 1.0f)); } // Reset the init transforms @@ -2599,31 +2599,31 @@ class TestCollisionWorld : public Test { // ----- Test AABB overlap ----- // - test(mWorld->testAABBOverlap(mConvexMeshBody1, mConcaveMeshBody)); + rp3d_test(mWorld->testAABBOverlap(mConvexMeshBody1, mConcaveMeshBody)); mOverlapCallback.reset(); mWorld->testOverlap(mConvexMeshBody1, &mOverlapCallback); - test(mOverlapCallback.hasOverlap()); + rp3d_test(mOverlapCallback.hasOverlap()); mOverlapCallback.reset(); mWorld->testOverlap(mConcaveMeshBody, &mOverlapCallback); - test(mOverlapCallback.hasOverlap()); + rp3d_test(mOverlapCallback.hasOverlap()); // ----- Test global collision test ----- // mCollisionCallback.reset(); mWorld->testCollision(&mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mConvexMeshProxyShape1, mConcaveMeshProxyShape)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mConvexMeshProxyShape1, mConcaveMeshProxyShape)); // Get collision data const CollisionData* collisionData = mCollisionCallback.getCollisionData(mConvexMeshProxyShape1, mConcaveMeshProxyShape); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 4); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 4); for (size_t i=0; icontactManifolds[0].contactPoints.size(); i++) { - test(approxEqual(collisionData->contactManifolds[0].contactPoints[i].penetrationDepth, 1.0f)); + rp3d_test(approxEqual(collisionData->contactManifolds[0].contactPoints[i].penetrationDepth, 1.0f)); } // ----- Test collision against body 1 only ----- // @@ -2631,16 +2631,16 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mConvexMeshBody1, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mConvexMeshProxyShape1, mConcaveMeshProxyShape)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mConvexMeshProxyShape1, mConcaveMeshProxyShape)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mConvexMeshProxyShape1, mConcaveMeshProxyShape); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 4); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 4); for (size_t i=0; icontactManifolds[0].contactPoints.size(); i++) { - test(approxEqual(collisionData->contactManifolds[0].contactPoints[i].penetrationDepth, 1.0f)); + rp3d_test(approxEqual(collisionData->contactManifolds[0].contactPoints[i].penetrationDepth, 1.0f)); } // ----- Test collision against body 2 only ----- // @@ -2648,16 +2648,16 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mConcaveMeshBody, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mConvexMeshProxyShape1, mConcaveMeshProxyShape)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mConvexMeshProxyShape1, mConcaveMeshProxyShape)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mConvexMeshProxyShape1, mConcaveMeshProxyShape); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 4); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 4); for (size_t i=0; icontactManifolds[0].contactPoints.size(); i++) { - test(approxEqual(collisionData->contactManifolds[0].contactPoints[i].penetrationDepth, 1.0f)); + rp3d_test(approxEqual(collisionData->contactManifolds[0].contactPoints[i].penetrationDepth, 1.0f)); } // ----- Test collision against selected body 1 and 2 ----- // @@ -2665,17 +2665,17 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mConvexMeshBody1, mConcaveMeshBody, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mConvexMeshProxyShape1, mConcaveMeshProxyShape)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mConvexMeshProxyShape1, mConcaveMeshProxyShape)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mConvexMeshProxyShape1, mConcaveMeshProxyShape); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 4); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 4); // Test contact points for (size_t i=0; icontactManifolds[0].contactPoints.size(); i++) { - test(approxEqual(collisionData->contactManifolds[0].contactPoints[i].penetrationDepth, 1.0f)); + rp3d_test(approxEqual(collisionData->contactManifolds[0].contactPoints[i].penetrationDepth, 1.0f)); } // Reset the init transforms @@ -2701,28 +2701,28 @@ class TestCollisionWorld : public Test { // ----- Test AABB overlap ----- // - test(mWorld->testAABBOverlap(mCapsuleBody1, mCapsuleBody2)); + rp3d_test(mWorld->testAABBOverlap(mCapsuleBody1, mCapsuleBody2)); mOverlapCallback.reset(); mWorld->testOverlap(mCapsuleBody1, &mOverlapCallback); - test(mOverlapCallback.hasOverlap()); + rp3d_test(mOverlapCallback.hasOverlap()); mOverlapCallback.reset(); mWorld->testOverlap(mCapsuleBody2, &mOverlapCallback); - test(mOverlapCallback.hasOverlap()); + rp3d_test(mOverlapCallback.hasOverlap()); // ----- Test global collision test ----- // mCollisionCallback.reset(); mWorld->testCollision(&mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mCapsuleProxyShape1, mCapsuleProxyShape2)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mCapsuleProxyShape1, mCapsuleProxyShape2)); // Get collision data const CollisionData* collisionData = mCollisionCallback.getCollisionData(mCapsuleProxyShape1, mCapsuleProxyShape2); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response bool swappedBodiesCollisionData = collisionData->getBody1()->getId() != mCapsuleBody1->getId(); @@ -2731,7 +2731,7 @@ class TestCollisionWorld : public Test { Vector3 localBody1Point(2, 3, 0); Vector3 localBody2Point(0, 5, 0); decimal penetrationDepth = 1.0f; - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, swappedBodiesCollisionData ? localBody1Point : localBody2Point, penetrationDepth)); @@ -2740,19 +2740,19 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mCapsuleBody1, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mCapsuleProxyShape1, mCapsuleProxyShape2)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mCapsuleProxyShape1, mCapsuleProxyShape2)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mCapsuleProxyShape1, mCapsuleProxyShape2); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mCapsuleBody1->getId(); // Test contact points - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, swappedBodiesCollisionData ? localBody1Point : localBody2Point, penetrationDepth)); @@ -2761,19 +2761,19 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mCapsuleBody2, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mCapsuleProxyShape1, mCapsuleProxyShape2)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mCapsuleProxyShape1, mCapsuleProxyShape2)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mCapsuleProxyShape1, mCapsuleProxyShape2); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mCapsuleBody1->getId(); // Test contact points - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, swappedBodiesCollisionData ? localBody1Point : localBody2Point, penetrationDepth)); @@ -2782,19 +2782,19 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mCapsuleBody1, mCapsuleBody2, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mCapsuleProxyShape1, mCapsuleProxyShape2)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mCapsuleProxyShape1, mCapsuleProxyShape2)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mCapsuleProxyShape1, mCapsuleProxyShape2); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mCapsuleBody1->getId(); // Test contact points - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, swappedBodiesCollisionData ? localBody1Point : localBody2Point, penetrationDepth)); @@ -2811,28 +2811,28 @@ class TestCollisionWorld : public Test { // ----- Test AABB overlap ----- // - test(mWorld->testAABBOverlap(mCapsuleBody1, mCapsuleBody2)); + rp3d_test(mWorld->testAABBOverlap(mCapsuleBody1, mCapsuleBody2)); mOverlapCallback.reset(); mWorld->testOverlap(mCapsuleBody1, &mOverlapCallback); - test(mOverlapCallback.hasOverlap()); + rp3d_test(mOverlapCallback.hasOverlap()); mOverlapCallback.reset(); mWorld->testOverlap(mCapsuleBody2, &mOverlapCallback); - test(mOverlapCallback.hasOverlap()); + rp3d_test(mOverlapCallback.hasOverlap()); // ----- Test global collision test ----- // mCollisionCallback.reset(); mWorld->testCollision(&mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mCapsuleProxyShape1, mCapsuleProxyShape2)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mCapsuleProxyShape1, mCapsuleProxyShape2)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mCapsuleProxyShape1, mCapsuleProxyShape2); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mCapsuleBody1->getId(); @@ -2841,7 +2841,7 @@ class TestCollisionWorld : public Test { localBody1Point = Vector3(0, 5, 0); localBody2Point = Vector3(-3, 0, 0); penetrationDepth = decimal(1.0); - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, swappedBodiesCollisionData ? localBody1Point : localBody2Point, penetrationDepth)); @@ -2850,19 +2850,19 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mCapsuleBody1, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mCapsuleProxyShape1, mCapsuleProxyShape2)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mCapsuleProxyShape1, mCapsuleProxyShape2)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mCapsuleProxyShape1, mCapsuleProxyShape2); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mCapsuleBody1->getId(); // Test contact points - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, swappedBodiesCollisionData ? localBody1Point : localBody2Point, penetrationDepth)); @@ -2871,19 +2871,19 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mCapsuleBody2, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mCapsuleProxyShape1, mCapsuleProxyShape2)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mCapsuleProxyShape1, mCapsuleProxyShape2)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mCapsuleProxyShape1, mCapsuleProxyShape2); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mCapsuleBody1->getId(); // Test contact points - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, swappedBodiesCollisionData ? localBody1Point : localBody2Point, penetrationDepth)); @@ -2892,19 +2892,19 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mCapsuleBody1, mCapsuleBody2, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mCapsuleProxyShape1, mCapsuleProxyShape2)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mCapsuleProxyShape1, mCapsuleProxyShape2)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mCapsuleProxyShape1, mCapsuleProxyShape2); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mCapsuleBody1->getId(); // Test contact points - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, swappedBodiesCollisionData ? localBody1Point : localBody2Point, penetrationDepth)); @@ -2931,28 +2931,28 @@ class TestCollisionWorld : public Test { // ----- Test AABB overlap ----- // - test(mWorld->testAABBOverlap(mCapsuleBody1, mConcaveMeshBody)); + rp3d_test(mWorld->testAABBOverlap(mCapsuleBody1, mConcaveMeshBody)); mOverlapCallback.reset(); mWorld->testOverlap(mCapsuleBody1, &mOverlapCallback); - test(mOverlapCallback.hasOverlap()); + rp3d_test(mOverlapCallback.hasOverlap()); mOverlapCallback.reset(); mWorld->testOverlap(mConcaveMeshBody, &mOverlapCallback); - test(mOverlapCallback.hasOverlap()); + rp3d_test(mOverlapCallback.hasOverlap()); // ----- Test global collision test ----- // mCollisionCallback.reset(); mWorld->testCollision(&mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mCapsuleProxyShape1, mConcaveMeshProxyShape)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mCapsuleProxyShape1, mConcaveMeshProxyShape)); // Get collision data const CollisionData* collisionData = mCollisionCallback.getCollisionData(mCapsuleProxyShape1, mConcaveMeshProxyShape); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response bool swappedBodiesCollisionData = collisionData->getBody1()->getId() != mCapsuleBody1->getId(); @@ -2961,7 +2961,7 @@ class TestCollisionWorld : public Test { Vector3 localBody1Point(0, -5, 0); Vector3 localBody2Point(0, 0, 0); decimal penetrationDepth = 0.02f; - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, swappedBodiesCollisionData ? localBody1Point : localBody2Point, penetrationDepth)); @@ -2970,19 +2970,19 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mCapsuleBody1, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mCapsuleProxyShape1, mConcaveMeshProxyShape)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mCapsuleProxyShape1, mConcaveMeshProxyShape)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mCapsuleProxyShape1, mConcaveMeshProxyShape); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mCapsuleBody1->getId(); // Test contact points - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, swappedBodiesCollisionData ? localBody1Point : localBody2Point, penetrationDepth)); @@ -2991,19 +2991,19 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mConcaveMeshBody, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mCapsuleProxyShape1, mConcaveMeshProxyShape)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mCapsuleProxyShape1, mConcaveMeshProxyShape)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mCapsuleProxyShape1, mConcaveMeshProxyShape); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mCapsuleBody1->getId(); // Test contact points - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, swappedBodiesCollisionData ? localBody1Point : localBody2Point, penetrationDepth)); @@ -3012,19 +3012,19 @@ class TestCollisionWorld : public Test { mCollisionCallback.reset(); mWorld->testCollision(mCapsuleBody1, mConcaveMeshBody, &mCollisionCallback); - test(mCollisionCallback.areProxyShapesColliding(mCapsuleProxyShape1, mConcaveMeshProxyShape)); + rp3d_test(mCollisionCallback.areProxyShapesColliding(mCapsuleProxyShape1, mConcaveMeshProxyShape)); // Get collision data collisionData = mCollisionCallback.getCollisionData(mCapsuleProxyShape1, mConcaveMeshProxyShape); - test(collisionData != nullptr); - test(collisionData->getNbContactManifolds() == 1); - test(collisionData->getTotalNbContactPoints() == 1); + rp3d_test(collisionData != nullptr); + rp3d_test(collisionData->getNbContactManifolds() == 1); + rp3d_test(collisionData->getTotalNbContactPoints() == 1); // True if the bodies are swapped in the collision callback response swappedBodiesCollisionData = collisionData->getBody1()->getId() != mCapsuleBody1->getId(); // Test contact points - test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, + rp3d_test(collisionData->hasContactPointSimilarTo(swappedBodiesCollisionData ? localBody2Point : localBody1Point, swappedBodiesCollisionData ? localBody1Point : localBody2Point, penetrationDepth)); diff --git a/test/tests/collision/TestDynamicAABBTree.h b/test/tests/collision/TestDynamicAABBTree.h index ade79afb..d7912630 100755 --- a/test/tests/collision/TestDynamicAABBTree.h +++ b/test/tests/collision/TestDynamicAABBTree.h @@ -147,18 +147,18 @@ class TestDynamicAABBTree : public Test { // Test root AABB AABB rootAABB = tree.getRootAABB(); - test(rootAABB.getMin().x == -6); - test(rootAABB.getMin().y == -4); - test(rootAABB.getMin().z == -3); - test(rootAABB.getMax().x == 10); - test(rootAABB.getMax().y == 8); - test(rootAABB.getMax().z == 3); + rp3d_test(rootAABB.getMin().x == -6); + rp3d_test(rootAABB.getMin().y == -4); + rp3d_test(rootAABB.getMin().z == -3); + rp3d_test(rootAABB.getMax().x == 10); + rp3d_test(rootAABB.getMax().y == 8); + rp3d_test(rootAABB.getMax().z == 3); // Test data stored at the nodes of the tree - test(*(int*)(tree.getNodeDataPointer(object1Id)) == object1Data); - test(*(int*)(tree.getNodeDataPointer(object2Id)) == object2Data); - test(*(int*)(tree.getNodeDataPointer(object3Id)) == object3Data); - test(*(int*)(tree.getNodeDataPointer(object4Id)) == object4Data); + rp3d_test(*(int*)(tree.getNodeDataPointer(object1Id)) == object1Data); + rp3d_test(*(int*)(tree.getNodeDataPointer(object2Id)) == object2Data); + rp3d_test(*(int*)(tree.getNodeDataPointer(object3Id)) == object3Data); + rp3d_test(*(int*)(tree.getNodeDataPointer(object4Id)) == object4Data); #ifdef IS_PROFILING_ACTIVE delete profiler; @@ -204,42 +204,42 @@ class TestDynamicAABBTree : public Test { // AABB overlapping nothing mOverlapCallback.reset(); tree.reportAllShapesOverlappingWithAABB(AABB(Vector3(-10, 12, -4), Vector3(10, 50, 4)), mOverlapCallback); - test(!mOverlapCallback.isOverlapping(object1Id)); - test(!mOverlapCallback.isOverlapping(object2Id)); - test(!mOverlapCallback.isOverlapping(object3Id)); - test(!mOverlapCallback.isOverlapping(object4Id)); + rp3d_test(!mOverlapCallback.isOverlapping(object1Id)); + rp3d_test(!mOverlapCallback.isOverlapping(object2Id)); + rp3d_test(!mOverlapCallback.isOverlapping(object3Id)); + rp3d_test(!mOverlapCallback.isOverlapping(object4Id)); // AABB overlapping everything mOverlapCallback.reset(); tree.reportAllShapesOverlappingWithAABB(AABB(Vector3(-15, -15, -4), Vector3(15, 15, 4)), mOverlapCallback); - test(mOverlapCallback.isOverlapping(object1Id)); - test(mOverlapCallback.isOverlapping(object2Id)); - test(mOverlapCallback.isOverlapping(object3Id)); - test(mOverlapCallback.isOverlapping(object4Id)); + rp3d_test(mOverlapCallback.isOverlapping(object1Id)); + rp3d_test(mOverlapCallback.isOverlapping(object2Id)); + rp3d_test(mOverlapCallback.isOverlapping(object3Id)); + rp3d_test(mOverlapCallback.isOverlapping(object4Id)); // AABB overlapping object 1 and 3 mOverlapCallback.reset(); tree.reportAllShapesOverlappingWithAABB(AABB(Vector3(-4, 2, -4), Vector3(-1, 7, 4)), mOverlapCallback); - test(mOverlapCallback.isOverlapping(object1Id)); - test(!mOverlapCallback.isOverlapping(object2Id)); - test(mOverlapCallback.isOverlapping(object3Id)); - test(!mOverlapCallback.isOverlapping(object4Id)); + rp3d_test(mOverlapCallback.isOverlapping(object1Id)); + rp3d_test(!mOverlapCallback.isOverlapping(object2Id)); + rp3d_test(mOverlapCallback.isOverlapping(object3Id)); + rp3d_test(!mOverlapCallback.isOverlapping(object4Id)); // AABB overlapping object 3 and 4 mOverlapCallback.reset(); tree.reportAllShapesOverlappingWithAABB(AABB(Vector3(-6, -5, -2), Vector3(2, 2, 0)), mOverlapCallback); - test(!mOverlapCallback.isOverlapping(object1Id)); - test(!mOverlapCallback.isOverlapping(object2Id)); - test(mOverlapCallback.isOverlapping(object3Id)); - test(mOverlapCallback.isOverlapping(object4Id)); + rp3d_test(!mOverlapCallback.isOverlapping(object1Id)); + rp3d_test(!mOverlapCallback.isOverlapping(object2Id)); + rp3d_test(mOverlapCallback.isOverlapping(object3Id)); + rp3d_test(mOverlapCallback.isOverlapping(object4Id)); // AABB overlapping object 2 mOverlapCallback.reset(); tree.reportAllShapesOverlappingWithAABB(AABB(Vector3(5, -10, -2), Vector3(7, 10, 9)), mOverlapCallback); - test(!mOverlapCallback.isOverlapping(object1Id)); - test(mOverlapCallback.isOverlapping(object2Id)); - test(!mOverlapCallback.isOverlapping(object3Id)); - test(!mOverlapCallback.isOverlapping(object4Id)); + rp3d_test(!mOverlapCallback.isOverlapping(object1Id)); + rp3d_test(mOverlapCallback.isOverlapping(object2Id)); + rp3d_test(!mOverlapCallback.isOverlapping(object3Id)); + rp3d_test(!mOverlapCallback.isOverlapping(object4Id)); // ---- Update the object AABBs with the initial AABBs (no reinsertion) ----- // @@ -251,42 +251,42 @@ class TestDynamicAABBTree : public Test { // AABB overlapping nothing mOverlapCallback.reset(); tree.reportAllShapesOverlappingWithAABB(AABB(Vector3(-10, 12, -4), Vector3(10, 50, 4)), mOverlapCallback); - test(!mOverlapCallback.isOverlapping(object1Id)); - test(!mOverlapCallback.isOverlapping(object2Id)); - test(!mOverlapCallback.isOverlapping(object3Id)); - test(!mOverlapCallback.isOverlapping(object4Id)); + rp3d_test(!mOverlapCallback.isOverlapping(object1Id)); + rp3d_test(!mOverlapCallback.isOverlapping(object2Id)); + rp3d_test(!mOverlapCallback.isOverlapping(object3Id)); + rp3d_test(!mOverlapCallback.isOverlapping(object4Id)); // AABB overlapping everything mOverlapCallback.reset(); tree.reportAllShapesOverlappingWithAABB(AABB(Vector3(-15, -15, -4), Vector3(15, 15, 4)), mOverlapCallback); - test(mOverlapCallback.isOverlapping(object1Id)); - test(mOverlapCallback.isOverlapping(object2Id)); - test(mOverlapCallback.isOverlapping(object3Id)); - test(mOverlapCallback.isOverlapping(object4Id)); + rp3d_test(mOverlapCallback.isOverlapping(object1Id)); + rp3d_test(mOverlapCallback.isOverlapping(object2Id)); + rp3d_test(mOverlapCallback.isOverlapping(object3Id)); + rp3d_test(mOverlapCallback.isOverlapping(object4Id)); // AABB overlapping object 1 and 3 mOverlapCallback.reset(); tree.reportAllShapesOverlappingWithAABB(AABB(Vector3(-4, 2, -4), Vector3(-1, 7, 4)), mOverlapCallback); - test(mOverlapCallback.isOverlapping(object1Id)); - test(!mOverlapCallback.isOverlapping(object2Id)); - test(mOverlapCallback.isOverlapping(object3Id)); - test(!mOverlapCallback.isOverlapping(object4Id)); + rp3d_test(mOverlapCallback.isOverlapping(object1Id)); + rp3d_test(!mOverlapCallback.isOverlapping(object2Id)); + rp3d_test(mOverlapCallback.isOverlapping(object3Id)); + rp3d_test(!mOverlapCallback.isOverlapping(object4Id)); // AABB overlapping object 3 and 4 mOverlapCallback.reset(); tree.reportAllShapesOverlappingWithAABB(AABB(Vector3(-6, -5, -2), Vector3(2, 2, 0)), mOverlapCallback); - test(!mOverlapCallback.isOverlapping(object1Id)); - test(!mOverlapCallback.isOverlapping(object2Id)); - test(mOverlapCallback.isOverlapping(object3Id)); - test(mOverlapCallback.isOverlapping(object4Id)); + rp3d_test(!mOverlapCallback.isOverlapping(object1Id)); + rp3d_test(!mOverlapCallback.isOverlapping(object2Id)); + rp3d_test(mOverlapCallback.isOverlapping(object3Id)); + rp3d_test(mOverlapCallback.isOverlapping(object4Id)); // AABB overlapping object 2 mOverlapCallback.reset(); tree.reportAllShapesOverlappingWithAABB(AABB(Vector3(5, -10, -2), Vector3(7, 10, 9)), mOverlapCallback); - test(!mOverlapCallback.isOverlapping(object1Id)); - test(mOverlapCallback.isOverlapping(object2Id)); - test(!mOverlapCallback.isOverlapping(object3Id)); - test(!mOverlapCallback.isOverlapping(object4Id)); + rp3d_test(!mOverlapCallback.isOverlapping(object1Id)); + rp3d_test(mOverlapCallback.isOverlapping(object2Id)); + rp3d_test(!mOverlapCallback.isOverlapping(object3Id)); + rp3d_test(!mOverlapCallback.isOverlapping(object4Id)); // ---- Update the object AABBs with the initial AABBs (with reinsertion) ----- // @@ -298,42 +298,42 @@ class TestDynamicAABBTree : public Test { // AABB overlapping nothing mOverlapCallback.reset(); tree.reportAllShapesOverlappingWithAABB(AABB(Vector3(-10, 12, -4), Vector3(10, 50, 4)), mOverlapCallback); - test(!mOverlapCallback.isOverlapping(object1Id)); - test(!mOverlapCallback.isOverlapping(object2Id)); - test(!mOverlapCallback.isOverlapping(object3Id)); - test(!mOverlapCallback.isOverlapping(object4Id)); + rp3d_test(!mOverlapCallback.isOverlapping(object1Id)); + rp3d_test(!mOverlapCallback.isOverlapping(object2Id)); + rp3d_test(!mOverlapCallback.isOverlapping(object3Id)); + rp3d_test(!mOverlapCallback.isOverlapping(object4Id)); // AABB overlapping everything mOverlapCallback.reset(); tree.reportAllShapesOverlappingWithAABB(AABB(Vector3(-15, -15, -4), Vector3(15, 15, 4)), mOverlapCallback); - test(mOverlapCallback.isOverlapping(object1Id)); - test(mOverlapCallback.isOverlapping(object2Id)); - test(mOverlapCallback.isOverlapping(object3Id)); - test(mOverlapCallback.isOverlapping(object4Id)); + rp3d_test(mOverlapCallback.isOverlapping(object1Id)); + rp3d_test(mOverlapCallback.isOverlapping(object2Id)); + rp3d_test(mOverlapCallback.isOverlapping(object3Id)); + rp3d_test(mOverlapCallback.isOverlapping(object4Id)); // AABB overlapping object 1 and 3 mOverlapCallback.reset(); tree.reportAllShapesOverlappingWithAABB(AABB(Vector3(-4, 2, -4), Vector3(-1, 7, 4)), mOverlapCallback); - test(mOverlapCallback.isOverlapping(object1Id)); - test(!mOverlapCallback.isOverlapping(object2Id)); - test(mOverlapCallback.isOverlapping(object3Id)); - test(!mOverlapCallback.isOverlapping(object4Id)); + rp3d_test(mOverlapCallback.isOverlapping(object1Id)); + rp3d_test(!mOverlapCallback.isOverlapping(object2Id)); + rp3d_test(mOverlapCallback.isOverlapping(object3Id)); + rp3d_test(!mOverlapCallback.isOverlapping(object4Id)); // AABB overlapping object 3 and 4 mOverlapCallback.reset(); tree.reportAllShapesOverlappingWithAABB(AABB(Vector3(-6, -5, -2), Vector3(2, 2, 0)), mOverlapCallback); - test(!mOverlapCallback.isOverlapping(object1Id)); - test(!mOverlapCallback.isOverlapping(object2Id)); - test(mOverlapCallback.isOverlapping(object3Id)); - test(mOverlapCallback.isOverlapping(object4Id)); + rp3d_test(!mOverlapCallback.isOverlapping(object1Id)); + rp3d_test(!mOverlapCallback.isOverlapping(object2Id)); + rp3d_test(mOverlapCallback.isOverlapping(object3Id)); + rp3d_test(mOverlapCallback.isOverlapping(object4Id)); // AABB overlapping object 2 mOverlapCallback.reset(); tree.reportAllShapesOverlappingWithAABB(AABB(Vector3(5, -10, -2), Vector3(7, 10, 9)), mOverlapCallback); - test(!mOverlapCallback.isOverlapping(object1Id)); - test(mOverlapCallback.isOverlapping(object2Id)); - test(!mOverlapCallback.isOverlapping(object3Id)); - test(!mOverlapCallback.isOverlapping(object4Id)); + rp3d_test(!mOverlapCallback.isOverlapping(object1Id)); + rp3d_test(mOverlapCallback.isOverlapping(object2Id)); + rp3d_test(!mOverlapCallback.isOverlapping(object3Id)); + rp3d_test(!mOverlapCallback.isOverlapping(object4Id)); // ---- Move objects 2 and 3 ----- // @@ -346,18 +346,18 @@ class TestDynamicAABBTree : public Test { // AABB overlapping object 3 mOverlapCallback.reset(); tree.reportAllShapesOverlappingWithAABB(AABB(Vector3(6, -10, -2), Vector3(8, 5, 3)), mOverlapCallback); - test(!mOverlapCallback.isOverlapping(object1Id)); - test(!mOverlapCallback.isOverlapping(object2Id)); - test(mOverlapCallback.isOverlapping(object3Id)); - test(!mOverlapCallback.isOverlapping(object4Id)); + rp3d_test(!mOverlapCallback.isOverlapping(object1Id)); + rp3d_test(!mOverlapCallback.isOverlapping(object2Id)); + rp3d_test(mOverlapCallback.isOverlapping(object3Id)); + rp3d_test(!mOverlapCallback.isOverlapping(object4Id)); // AABB overlapping objects 1, 2 mOverlapCallback.reset(); tree.reportAllShapesOverlappingWithAABB(AABB(Vector3(-8, 5, -3), Vector3(-2, 11, 3)), mOverlapCallback); - test(mOverlapCallback.isOverlapping(object1Id)); - test(mOverlapCallback.isOverlapping(object2Id)); - test(!mOverlapCallback.isOverlapping(object3Id)); - test(!mOverlapCallback.isOverlapping(object4Id)); + rp3d_test(mOverlapCallback.isOverlapping(object1Id)); + rp3d_test(mOverlapCallback.isOverlapping(object2Id)); + rp3d_test(!mOverlapCallback.isOverlapping(object3Id)); + rp3d_test(!mOverlapCallback.isOverlapping(object4Id)); #ifdef IS_PROFILING_ACTIVE delete profiler; @@ -404,37 +404,37 @@ class TestDynamicAABBTree : public Test { mRaycastCallback.reset(); Ray ray1(Vector3(4.5, -10, -5), Vector3(4.5, 10, -5)); tree.raycast(ray1, mRaycastCallback); - test(!mRaycastCallback.isHit(object1Id)); - test(!mRaycastCallback.isHit(object2Id)); - test(!mRaycastCallback.isHit(object3Id)); - test(!mRaycastCallback.isHit(object4Id)); + rp3d_test(!mRaycastCallback.isHit(object1Id)); + rp3d_test(!mRaycastCallback.isHit(object2Id)); + rp3d_test(!mRaycastCallback.isHit(object3Id)); + rp3d_test(!mRaycastCallback.isHit(object4Id)); // Ray that hits object 1 mRaycastCallback.reset(); Ray ray2(Vector3(-1, -20, -2), Vector3(-1, 20, -2)); tree.raycast(ray2, mRaycastCallback); - test(mRaycastCallback.isHit(object1Id)); - test(!mRaycastCallback.isHit(object2Id)); - test(!mRaycastCallback.isHit(object3Id)); - test(!mRaycastCallback.isHit(object4Id)); + rp3d_test(mRaycastCallback.isHit(object1Id)); + rp3d_test(!mRaycastCallback.isHit(object2Id)); + rp3d_test(!mRaycastCallback.isHit(object3Id)); + rp3d_test(!mRaycastCallback.isHit(object4Id)); // Ray that hits object 1 and 2 mRaycastCallback.reset(); Ray ray3(Vector3(-7, 6, -2), Vector3(8, 6, -2)); tree.raycast(ray3, mRaycastCallback); - test(mRaycastCallback.isHit(object1Id)); - test(mRaycastCallback.isHit(object2Id)); - test(!mRaycastCallback.isHit(object3Id)); - test(!mRaycastCallback.isHit(object4Id)); + rp3d_test(mRaycastCallback.isHit(object1Id)); + rp3d_test(mRaycastCallback.isHit(object2Id)); + rp3d_test(!mRaycastCallback.isHit(object3Id)); + rp3d_test(!mRaycastCallback.isHit(object4Id)); // Ray that hits object 3 mRaycastCallback.reset(); Ray ray4(Vector3(-7, 2, 0), Vector3(-1, 2, 0)); tree.raycast(ray4, mRaycastCallback); - test(!mRaycastCallback.isHit(object1Id)); - test(!mRaycastCallback.isHit(object2Id)); - test(mRaycastCallback.isHit(object3Id)); - test(!mRaycastCallback.isHit(object4Id)); + rp3d_test(!mRaycastCallback.isHit(object1Id)); + rp3d_test(!mRaycastCallback.isHit(object2Id)); + rp3d_test(mRaycastCallback.isHit(object3Id)); + rp3d_test(!mRaycastCallback.isHit(object4Id)); // ---- Update the object AABBs with the initial AABBs (no reinsertion) ----- // @@ -446,34 +446,34 @@ class TestDynamicAABBTree : public Test { // Ray with no hits mRaycastCallback.reset(); tree.raycast(ray1, mRaycastCallback); - test(!mRaycastCallback.isHit(object1Id)); - test(!mRaycastCallback.isHit(object2Id)); - test(!mRaycastCallback.isHit(object3Id)); - test(!mRaycastCallback.isHit(object4Id)); + rp3d_test(!mRaycastCallback.isHit(object1Id)); + rp3d_test(!mRaycastCallback.isHit(object2Id)); + rp3d_test(!mRaycastCallback.isHit(object3Id)); + rp3d_test(!mRaycastCallback.isHit(object4Id)); // Ray that hits object 1 mRaycastCallback.reset(); tree.raycast(ray2, mRaycastCallback); - test(mRaycastCallback.isHit(object1Id)); - test(!mRaycastCallback.isHit(object2Id)); - test(!mRaycastCallback.isHit(object3Id)); - test(!mRaycastCallback.isHit(object4Id)); + rp3d_test(mRaycastCallback.isHit(object1Id)); + rp3d_test(!mRaycastCallback.isHit(object2Id)); + rp3d_test(!mRaycastCallback.isHit(object3Id)); + rp3d_test(!mRaycastCallback.isHit(object4Id)); // Ray that hits object 1 and 2 mRaycastCallback.reset(); tree.raycast(ray3, mRaycastCallback); - test(mRaycastCallback.isHit(object1Id)); - test(mRaycastCallback.isHit(object2Id)); - test(!mRaycastCallback.isHit(object3Id)); - test(!mRaycastCallback.isHit(object4Id)); + rp3d_test(mRaycastCallback.isHit(object1Id)); + rp3d_test(mRaycastCallback.isHit(object2Id)); + rp3d_test(!mRaycastCallback.isHit(object3Id)); + rp3d_test(!mRaycastCallback.isHit(object4Id)); // Ray that hits object 3 mRaycastCallback.reset(); tree.raycast(ray4, mRaycastCallback); - test(!mRaycastCallback.isHit(object1Id)); - test(!mRaycastCallback.isHit(object2Id)); - test(mRaycastCallback.isHit(object3Id)); - test(!mRaycastCallback.isHit(object4Id)); + rp3d_test(!mRaycastCallback.isHit(object1Id)); + rp3d_test(!mRaycastCallback.isHit(object2Id)); + rp3d_test(mRaycastCallback.isHit(object3Id)); + rp3d_test(!mRaycastCallback.isHit(object4Id)); // ---- Update the object AABBs with the initial AABBs (with reinsertion) ----- // @@ -485,34 +485,34 @@ class TestDynamicAABBTree : public Test { // Ray with no hits mRaycastCallback.reset(); tree.raycast(ray1, mRaycastCallback); - test(!mRaycastCallback.isHit(object1Id)); - test(!mRaycastCallback.isHit(object2Id)); - test(!mRaycastCallback.isHit(object3Id)); - test(!mRaycastCallback.isHit(object4Id)); + rp3d_test(!mRaycastCallback.isHit(object1Id)); + rp3d_test(!mRaycastCallback.isHit(object2Id)); + rp3d_test(!mRaycastCallback.isHit(object3Id)); + rp3d_test(!mRaycastCallback.isHit(object4Id)); // Ray that hits object 1 mRaycastCallback.reset(); tree.raycast(ray2, mRaycastCallback); - test(mRaycastCallback.isHit(object1Id)); - test(!mRaycastCallback.isHit(object2Id)); - test(!mRaycastCallback.isHit(object3Id)); - test(!mRaycastCallback.isHit(object4Id)); + rp3d_test(mRaycastCallback.isHit(object1Id)); + rp3d_test(!mRaycastCallback.isHit(object2Id)); + rp3d_test(!mRaycastCallback.isHit(object3Id)); + rp3d_test(!mRaycastCallback.isHit(object4Id)); // Ray that hits object 1 and 2 mRaycastCallback.reset(); tree.raycast(ray3, mRaycastCallback); - test(mRaycastCallback.isHit(object1Id)); - test(mRaycastCallback.isHit(object2Id)); - test(!mRaycastCallback.isHit(object3Id)); - test(!mRaycastCallback.isHit(object4Id)); + rp3d_test(mRaycastCallback.isHit(object1Id)); + rp3d_test(mRaycastCallback.isHit(object2Id)); + rp3d_test(!mRaycastCallback.isHit(object3Id)); + rp3d_test(!mRaycastCallback.isHit(object4Id)); // Ray that hits object 3 mRaycastCallback.reset(); tree.raycast(ray4, mRaycastCallback); - test(!mRaycastCallback.isHit(object1Id)); - test(!mRaycastCallback.isHit(object2Id)); - test(mRaycastCallback.isHit(object3Id)); - test(!mRaycastCallback.isHit(object4Id)); + rp3d_test(!mRaycastCallback.isHit(object1Id)); + rp3d_test(!mRaycastCallback.isHit(object2Id)); + rp3d_test(mRaycastCallback.isHit(object3Id)); + rp3d_test(!mRaycastCallback.isHit(object4Id)); // ---- Move objects 2 and 3 ----- // @@ -526,19 +526,19 @@ class TestDynamicAABBTree : public Test { Ray ray5(Vector3(-4, -5, 0), Vector3(-4, 12, 0)); mRaycastCallback.reset(); tree.raycast(ray5, mRaycastCallback); - test(mRaycastCallback.isHit(object1Id)); - test(mRaycastCallback.isHit(object2Id)); - test(!mRaycastCallback.isHit(object3Id)); - test(!mRaycastCallback.isHit(object4Id)); + rp3d_test(mRaycastCallback.isHit(object1Id)); + rp3d_test(mRaycastCallback.isHit(object2Id)); + rp3d_test(!mRaycastCallback.isHit(object3Id)); + rp3d_test(!mRaycastCallback.isHit(object4Id)); // Ray that hits object 3 and 4 Ray ray6(Vector3(11, -3, 1), Vector3(-2, -3, 1)); mRaycastCallback.reset(); tree.raycast(ray6, mRaycastCallback); - test(!mRaycastCallback.isHit(object1Id)); - test(!mRaycastCallback.isHit(object2Id)); - test(mRaycastCallback.isHit(object3Id)); - test(mRaycastCallback.isHit(object4Id)); + rp3d_test(!mRaycastCallback.isHit(object1Id)); + rp3d_test(!mRaycastCallback.isHit(object2Id)); + rp3d_test(mRaycastCallback.isHit(object3Id)); + rp3d_test(mRaycastCallback.isHit(object4Id)); #ifdef IS_PROFILING_ACTIVE delete profiler; diff --git a/test/tests/collision/TestHalfEdgeStructure.h b/test/tests/collision/TestHalfEdgeStructure.h index 35f357b3..67aed24f 100644 --- a/test/tests/collision/TestHalfEdgeStructure.h +++ b/test/tests/collision/TestHalfEdgeStructure.h @@ -4,6 +4,7 @@ // Libraries #include "reactphysics3d.h" #include "Test.h" +#include /// Reactphysics3D namespace namespace reactphysics3d { @@ -94,54 +95,54 @@ class TestHalfEdgeStructure : public Test { // --- Test that the half-edge structure of the cube is valid --- // - test(cubeStructure.getNbFaces() == 6); - test(cubeStructure.getNbVertices() == 8); - test(cubeStructure.getNbHalfEdges() == 24); + rp3d_test(cubeStructure.getNbFaces() == 6); + rp3d_test(cubeStructure.getNbVertices() == 8); + rp3d_test(cubeStructure.getNbHalfEdges() == 24); // Test vertices - test(vertices[cubeStructure.getVertex(0).vertexPointIndex].x == -0.5); - test(vertices[cubeStructure.getVertex(0).vertexPointIndex].y == -0.5); - test(vertices[cubeStructure.getVertex(0).vertexPointIndex].z == 0.5); - test(cubeStructure.getHalfEdge(cubeStructure.getVertex(0).edgeIndex).vertexIndex == 0); + rp3d_test(vertices[cubeStructure.getVertex(0).vertexPointIndex].x == -0.5); + rp3d_test(vertices[cubeStructure.getVertex(0).vertexPointIndex].y == -0.5); + rp3d_test(vertices[cubeStructure.getVertex(0).vertexPointIndex].z == 0.5); + rp3d_test(cubeStructure.getHalfEdge(cubeStructure.getVertex(0).edgeIndex).vertexIndex == 0); - test(vertices[cubeStructure.getVertex(1).vertexPointIndex].x == 0.5); - test(vertices[cubeStructure.getVertex(1).vertexPointIndex].y == -0.5); - test(vertices[cubeStructure.getVertex(1).vertexPointIndex].z == 0.5); - test(cubeStructure.getHalfEdge(cubeStructure.getVertex(1).edgeIndex).vertexIndex == 1); + rp3d_test(vertices[cubeStructure.getVertex(1).vertexPointIndex].x == 0.5); + rp3d_test(vertices[cubeStructure.getVertex(1).vertexPointIndex].y == -0.5); + rp3d_test(vertices[cubeStructure.getVertex(1).vertexPointIndex].z == 0.5); + rp3d_test(cubeStructure.getHalfEdge(cubeStructure.getVertex(1).edgeIndex).vertexIndex == 1); - test(vertices[cubeStructure.getVertex(2).vertexPointIndex].x == 0.5); - test(vertices[cubeStructure.getVertex(2).vertexPointIndex].y == 0.5); - test(vertices[cubeStructure.getVertex(2).vertexPointIndex].z == 0.5); - test(cubeStructure.getHalfEdge(cubeStructure.getVertex(2).edgeIndex).vertexIndex == 2); + rp3d_test(vertices[cubeStructure.getVertex(2).vertexPointIndex].x == 0.5); + rp3d_test(vertices[cubeStructure.getVertex(2).vertexPointIndex].y == 0.5); + rp3d_test(vertices[cubeStructure.getVertex(2).vertexPointIndex].z == 0.5); + rp3d_test(cubeStructure.getHalfEdge(cubeStructure.getVertex(2).edgeIndex).vertexIndex == 2); - test(vertices[cubeStructure.getVertex(3).vertexPointIndex].x == -0.5); - test(vertices[cubeStructure.getVertex(3).vertexPointIndex].y == 0.5); - test(vertices[cubeStructure.getVertex(3).vertexPointIndex].z == 0.5); - test(cubeStructure.getHalfEdge(cubeStructure.getVertex(3).edgeIndex).vertexIndex == 3); + rp3d_test(vertices[cubeStructure.getVertex(3).vertexPointIndex].x == -0.5); + rp3d_test(vertices[cubeStructure.getVertex(3).vertexPointIndex].y == 0.5); + rp3d_test(vertices[cubeStructure.getVertex(3).vertexPointIndex].z == 0.5); + rp3d_test(cubeStructure.getHalfEdge(cubeStructure.getVertex(3).edgeIndex).vertexIndex == 3); - test(vertices[cubeStructure.getVertex(4).vertexPointIndex].x == -0.5); - test(vertices[cubeStructure.getVertex(4).vertexPointIndex].y == -0.5); - test(vertices[cubeStructure.getVertex(4).vertexPointIndex].z == -0.5); - test(cubeStructure.getHalfEdge(cubeStructure.getVertex(4).edgeIndex).vertexIndex == 4); + rp3d_test(vertices[cubeStructure.getVertex(4).vertexPointIndex].x == -0.5); + rp3d_test(vertices[cubeStructure.getVertex(4).vertexPointIndex].y == -0.5); + rp3d_test(vertices[cubeStructure.getVertex(4).vertexPointIndex].z == -0.5); + rp3d_test(cubeStructure.getHalfEdge(cubeStructure.getVertex(4).edgeIndex).vertexIndex == 4); - test(vertices[cubeStructure.getVertex(5).vertexPointIndex].x == 0.5); - test(vertices[cubeStructure.getVertex(5).vertexPointIndex].y == -0.5); - test(vertices[cubeStructure.getVertex(5).vertexPointIndex].z == -0.5); - test(cubeStructure.getHalfEdge(cubeStructure.getVertex(5).edgeIndex).vertexIndex == 5); + rp3d_test(vertices[cubeStructure.getVertex(5).vertexPointIndex].x == 0.5); + rp3d_test(vertices[cubeStructure.getVertex(5).vertexPointIndex].y == -0.5); + rp3d_test(vertices[cubeStructure.getVertex(5).vertexPointIndex].z == -0.5); + rp3d_test(cubeStructure.getHalfEdge(cubeStructure.getVertex(5).edgeIndex).vertexIndex == 5); - test(vertices[cubeStructure.getVertex(6).vertexPointIndex].x == 0.5); - test(vertices[cubeStructure.getVertex(6).vertexPointIndex].y == 0.5); - test(vertices[cubeStructure.getVertex(6).vertexPointIndex].z == -0.5); - test(cubeStructure.getHalfEdge(cubeStructure.getVertex(6).edgeIndex).vertexIndex == 6); + rp3d_test(vertices[cubeStructure.getVertex(6).vertexPointIndex].x == 0.5); + rp3d_test(vertices[cubeStructure.getVertex(6).vertexPointIndex].y == 0.5); + rp3d_test(vertices[cubeStructure.getVertex(6).vertexPointIndex].z == -0.5); + rp3d_test(cubeStructure.getHalfEdge(cubeStructure.getVertex(6).edgeIndex).vertexIndex == 6); - test(vertices[cubeStructure.getVertex(7).vertexPointIndex].x == -0.5); - test(vertices[cubeStructure.getVertex(7).vertexPointIndex].y == 0.5); - test(vertices[cubeStructure.getVertex(7).vertexPointIndex].z == -0.5); - test(cubeStructure.getHalfEdge(cubeStructure.getVertex(7).edgeIndex).vertexIndex == 7); + rp3d_test(vertices[cubeStructure.getVertex(7).vertexPointIndex].x == -0.5); + rp3d_test(vertices[cubeStructure.getVertex(7).vertexPointIndex].y == 0.5); + rp3d_test(vertices[cubeStructure.getVertex(7).vertexPointIndex].z == -0.5); + rp3d_test(cubeStructure.getHalfEdge(cubeStructure.getVertex(7).edgeIndex).vertexIndex == 7); // Test faces for (uint f=0; f<6; f++) { - test(cubeStructure.getHalfEdge(cubeStructure.getFace(f).edgeIndex).faceIndex == f); + rp3d_test(cubeStructure.getHalfEdge(cubeStructure.getFace(f).edgeIndex).faceIndex == f); } // Test edges @@ -156,14 +157,14 @@ class TestHalfEdgeStructure : public Test { rp3d::HalfEdgeStructure::Edge edge = cubeStructure.getHalfEdge(edgeIndex); - test(cubeStructure.getHalfEdge(edge.twinEdgeIndex).twinEdgeIndex == edgeIndex); - test(edge.faceIndex == f); + rp3d_test(cubeStructure.getHalfEdge(edge.twinEdgeIndex).twinEdgeIndex == edgeIndex); + rp3d_test(edge.faceIndex == f); // Go to the next edge edgeIndex = edge.nextEdgeIndex; } - test(firstEdgeIndex == edgeIndex); + rp3d_test(firstEdgeIndex == edgeIndex); } } @@ -205,34 +206,34 @@ class TestHalfEdgeStructure : public Test { // --- Test that the half-edge structure of the tetrahedron is valid --- // - test(tetrahedron.getNbFaces() == 4); - test(tetrahedron.getNbVertices() == 4); - test(tetrahedron.getNbHalfEdges() == 12); + rp3d_test(tetrahedron.getNbFaces() == 4); + rp3d_test(tetrahedron.getNbVertices() == 4); + rp3d_test(tetrahedron.getNbHalfEdges() == 12); // Test vertices - test(vertices[tetrahedron.getVertex(0).vertexPointIndex].x == 1); - test(vertices[tetrahedron.getVertex(0).vertexPointIndex].y == -1); - test(vertices[tetrahedron.getVertex(0).vertexPointIndex].z == -1); - test(tetrahedron.getHalfEdge(tetrahedron.getVertex(0).edgeIndex).vertexIndex == 0); + rp3d_test(vertices[tetrahedron.getVertex(0).vertexPointIndex].x == 1); + rp3d_test(vertices[tetrahedron.getVertex(0).vertexPointIndex].y == -1); + rp3d_test(vertices[tetrahedron.getVertex(0).vertexPointIndex].z == -1); + rp3d_test(tetrahedron.getHalfEdge(tetrahedron.getVertex(0).edgeIndex).vertexIndex == 0); - test(vertices[tetrahedron.getVertex(1).vertexPointIndex].x == -1); - test(vertices[tetrahedron.getVertex(1).vertexPointIndex].y == -1); - test(vertices[tetrahedron.getVertex(1).vertexPointIndex].z == -1); - test(tetrahedron.getHalfEdge(tetrahedron.getVertex(1).edgeIndex).vertexIndex == 1); + rp3d_test(vertices[tetrahedron.getVertex(1).vertexPointIndex].x == -1); + rp3d_test(vertices[tetrahedron.getVertex(1).vertexPointIndex].y == -1); + rp3d_test(vertices[tetrahedron.getVertex(1).vertexPointIndex].z == -1); + rp3d_test(tetrahedron.getHalfEdge(tetrahedron.getVertex(1).edgeIndex).vertexIndex == 1); - test(vertices[tetrahedron.getVertex(2).vertexPointIndex].x == 0); - test(vertices[tetrahedron.getVertex(2).vertexPointIndex].y == -1); - test(vertices[tetrahedron.getVertex(2).vertexPointIndex].z == 1); - test(tetrahedron.getHalfEdge(tetrahedron.getVertex(2).edgeIndex).vertexIndex == 2); + rp3d_test(vertices[tetrahedron.getVertex(2).vertexPointIndex].x == 0); + rp3d_test(vertices[tetrahedron.getVertex(2).vertexPointIndex].y == -1); + rp3d_test(vertices[tetrahedron.getVertex(2).vertexPointIndex].z == 1); + rp3d_test(tetrahedron.getHalfEdge(tetrahedron.getVertex(2).edgeIndex).vertexIndex == 2); - test(vertices[tetrahedron.getVertex(3).vertexPointIndex].x == 0); - test(vertices[tetrahedron.getVertex(3).vertexPointIndex].y == 1); - test(vertices[tetrahedron.getVertex(3).vertexPointIndex].z == 0); - test(tetrahedron.getHalfEdge(tetrahedron.getVertex(3).edgeIndex).vertexIndex == 3); + rp3d_test(vertices[tetrahedron.getVertex(3).vertexPointIndex].x == 0); + rp3d_test(vertices[tetrahedron.getVertex(3).vertexPointIndex].y == 1); + rp3d_test(vertices[tetrahedron.getVertex(3).vertexPointIndex].z == 0); + rp3d_test(tetrahedron.getHalfEdge(tetrahedron.getVertex(3).edgeIndex).vertexIndex == 3); // Test faces for (uint f=0; f<4; f++) { - test(tetrahedron.getHalfEdge(tetrahedron.getFace(f).edgeIndex).faceIndex == f); + rp3d_test(tetrahedron.getHalfEdge(tetrahedron.getFace(f).edgeIndex).faceIndex == f); } // Test edges @@ -246,14 +247,14 @@ class TestHalfEdgeStructure : public Test { rp3d::HalfEdgeStructure::Edge edge = tetrahedron.getHalfEdge(edgeIndex); - test(tetrahedron.getHalfEdge(edge.twinEdgeIndex).twinEdgeIndex == edgeIndex); - test(edge.faceIndex == f); + rp3d_test(tetrahedron.getHalfEdge(edge.twinEdgeIndex).twinEdgeIndex == edgeIndex); + rp3d_test(edge.faceIndex == f); // Go to the next edge edgeIndex = edge.nextEdgeIndex; } - test(firstEdgeIndex == edgeIndex); + rp3d_test(firstEdgeIndex == edgeIndex); } } }; diff --git a/test/tests/collision/TestPointInside.h b/test/tests/collision/TestPointInside.h index 2046cf36..f0b0cd1e 100644 --- a/test/tests/collision/TestPointInside.h +++ b/test/tests/collision/TestPointInside.h @@ -196,56 +196,56 @@ class TestPointInside : public Test { void testBox() { // Tests with CollisionBody - test(mBoxBody->testPointInside(mLocalShapeToWorld * Vector3(0, 0, 0))); - test(mBoxBody->testPointInside(mLocalShapeToWorld * Vector3(-1.9, 0, 0))); - test(mBoxBody->testPointInside(mLocalShapeToWorld * Vector3(1.9, 0, 0))); - test(mBoxBody->testPointInside(mLocalShapeToWorld * Vector3(0, -2.9, 0))); - test(mBoxBody->testPointInside(mLocalShapeToWorld * Vector3(0, 2.9, 0))); - test(mBoxBody->testPointInside(mLocalShapeToWorld * Vector3(0, 0, -3.9))); - test(mBoxBody->testPointInside(mLocalShapeToWorld * Vector3(0, 0, 3.9))); - test(mBoxBody->testPointInside(mLocalShapeToWorld * Vector3(-1.9, -2.9, -3.9))); - test(mBoxBody->testPointInside(mLocalShapeToWorld * Vector3(1.9, 2.9, 3.9))); - test(mBoxBody->testPointInside(mLocalShapeToWorld * Vector3(-1, -2, -1.5))); - test(mBoxBody->testPointInside(mLocalShapeToWorld * Vector3(-1, 2, -2.5))); - test(mBoxBody->testPointInside(mLocalShapeToWorld * Vector3(1, -2, 3.5))); + rp3d_test(mBoxBody->testPointInside(mLocalShapeToWorld * Vector3(0, 0, 0))); + rp3d_test(mBoxBody->testPointInside(mLocalShapeToWorld * Vector3(-1.9, 0, 0))); + rp3d_test(mBoxBody->testPointInside(mLocalShapeToWorld * Vector3(1.9, 0, 0))); + rp3d_test(mBoxBody->testPointInside(mLocalShapeToWorld * Vector3(0, -2.9, 0))); + rp3d_test(mBoxBody->testPointInside(mLocalShapeToWorld * Vector3(0, 2.9, 0))); + rp3d_test(mBoxBody->testPointInside(mLocalShapeToWorld * Vector3(0, 0, -3.9))); + rp3d_test(mBoxBody->testPointInside(mLocalShapeToWorld * Vector3(0, 0, 3.9))); + rp3d_test(mBoxBody->testPointInside(mLocalShapeToWorld * Vector3(-1.9, -2.9, -3.9))); + rp3d_test(mBoxBody->testPointInside(mLocalShapeToWorld * Vector3(1.9, 2.9, 3.9))); + rp3d_test(mBoxBody->testPointInside(mLocalShapeToWorld * Vector3(-1, -2, -1.5))); + rp3d_test(mBoxBody->testPointInside(mLocalShapeToWorld * Vector3(-1, 2, -2.5))); + rp3d_test(mBoxBody->testPointInside(mLocalShapeToWorld * Vector3(1, -2, 3.5))); - test(!mBoxBody->testPointInside(mLocalShapeToWorld * Vector3(-2.1, 0, 0))); - test(!mBoxBody->testPointInside(mLocalShapeToWorld * Vector3(2.1, 0, 0))); - test(!mBoxBody->testPointInside(mLocalShapeToWorld * Vector3(0, -3.1, 0))); - test(!mBoxBody->testPointInside(mLocalShapeToWorld * Vector3(0, 3.1, 0))); - test(!mBoxBody->testPointInside(mLocalShapeToWorld * Vector3(0, 0, -4.1))); - test(!mBoxBody->testPointInside(mLocalShapeToWorld * Vector3(0, 0, 4.1))); - test(!mBoxBody->testPointInside(mLocalShapeToWorld * Vector3(-2.1, -3.1, -4.1))); - test(!mBoxBody->testPointInside(mLocalShapeToWorld * Vector3(2.1, 3.1, 4.1))); - test(!mBoxBody->testPointInside(mLocalShapeToWorld * Vector3(-10, -2, -1.5))); - test(!mBoxBody->testPointInside(mLocalShapeToWorld * Vector3(-1, 4, -2.5))); - test(!mBoxBody->testPointInside(mLocalShapeToWorld * Vector3(1, -2, 4.5))); + rp3d_test(!mBoxBody->testPointInside(mLocalShapeToWorld * Vector3(-2.1, 0, 0))); + rp3d_test(!mBoxBody->testPointInside(mLocalShapeToWorld * Vector3(2.1, 0, 0))); + rp3d_test(!mBoxBody->testPointInside(mLocalShapeToWorld * Vector3(0, -3.1, 0))); + rp3d_test(!mBoxBody->testPointInside(mLocalShapeToWorld * Vector3(0, 3.1, 0))); + rp3d_test(!mBoxBody->testPointInside(mLocalShapeToWorld * Vector3(0, 0, -4.1))); + rp3d_test(!mBoxBody->testPointInside(mLocalShapeToWorld * Vector3(0, 0, 4.1))); + rp3d_test(!mBoxBody->testPointInside(mLocalShapeToWorld * Vector3(-2.1, -3.1, -4.1))); + rp3d_test(!mBoxBody->testPointInside(mLocalShapeToWorld * Vector3(2.1, 3.1, 4.1))); + rp3d_test(!mBoxBody->testPointInside(mLocalShapeToWorld * Vector3(-10, -2, -1.5))); + rp3d_test(!mBoxBody->testPointInside(mLocalShapeToWorld * Vector3(-1, 4, -2.5))); + rp3d_test(!mBoxBody->testPointInside(mLocalShapeToWorld * Vector3(1, -2, 4.5))); // Tests with ProxyBoxShape - test(mBoxProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 0, 0))); - test(mBoxProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-1.9, 0, 0))); - test(mBoxProxyShape->testPointInside(mLocalShapeToWorld * Vector3(1.9, 0, 0))); - test(mBoxProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, -2.9, 0))); - test(mBoxProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 2.9, 0))); - test(mBoxProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 0, -3.9))); - test(mBoxProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 0, 3.9))); - test(mBoxProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-1.9, -2.9, -3.9))); - test(mBoxProxyShape->testPointInside(mLocalShapeToWorld * Vector3(1.9, 2.9, 3.9))); - test(mBoxProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-1, -2, -1.5))); - test(mBoxProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-1, 2, -2.5))); - test(mBoxProxyShape->testPointInside(mLocalShapeToWorld * Vector3(1, -2, 3.5))); + rp3d_test(mBoxProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 0, 0))); + rp3d_test(mBoxProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-1.9, 0, 0))); + rp3d_test(mBoxProxyShape->testPointInside(mLocalShapeToWorld * Vector3(1.9, 0, 0))); + rp3d_test(mBoxProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, -2.9, 0))); + rp3d_test(mBoxProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 2.9, 0))); + rp3d_test(mBoxProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 0, -3.9))); + rp3d_test(mBoxProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 0, 3.9))); + rp3d_test(mBoxProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-1.9, -2.9, -3.9))); + rp3d_test(mBoxProxyShape->testPointInside(mLocalShapeToWorld * Vector3(1.9, 2.9, 3.9))); + rp3d_test(mBoxProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-1, -2, -1.5))); + rp3d_test(mBoxProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-1, 2, -2.5))); + rp3d_test(mBoxProxyShape->testPointInside(mLocalShapeToWorld * Vector3(1, -2, 3.5))); - test(!mBoxProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-2.1, 0, 0))); - test(!mBoxProxyShape->testPointInside(mLocalShapeToWorld * Vector3(2.1, 0, 0))); - test(!mBoxProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, -3.1, 0))); - test(!mBoxProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 3.1, 0))); - test(!mBoxProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 0, -4.1))); - test(!mBoxProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 0, 4.1))); - test(!mBoxProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-2.1, -3.1, -4.1))); - test(!mBoxProxyShape->testPointInside(mLocalShapeToWorld * Vector3(2.1, 3.1, 4.1))); - test(!mBoxProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-10, -2, -1.5))); - test(!mBoxProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-1, 4, -2.5))); - test(!mBoxProxyShape->testPointInside(mLocalShapeToWorld * Vector3(1, -2, 4.5))); + rp3d_test(!mBoxProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-2.1, 0, 0))); + rp3d_test(!mBoxProxyShape->testPointInside(mLocalShapeToWorld * Vector3(2.1, 0, 0))); + rp3d_test(!mBoxProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, -3.1, 0))); + rp3d_test(!mBoxProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 3.1, 0))); + rp3d_test(!mBoxProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 0, -4.1))); + rp3d_test(!mBoxProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 0, 4.1))); + rp3d_test(!mBoxProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-2.1, -3.1, -4.1))); + rp3d_test(!mBoxProxyShape->testPointInside(mLocalShapeToWorld * Vector3(2.1, 3.1, 4.1))); + rp3d_test(!mBoxProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-10, -2, -1.5))); + rp3d_test(!mBoxProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-1, 4, -2.5))); + rp3d_test(!mBoxProxyShape->testPointInside(mLocalShapeToWorld * Vector3(1, -2, 4.5))); } /// Test the ProxySphereShape::testPointInside() and @@ -253,48 +253,48 @@ class TestPointInside : public Test { void testSphere() { // Tests with CollisionBody - test(mSphereBody->testPointInside(mLocalShapeToWorld * Vector3(0, 0, 0))); - test(mSphereBody->testPointInside(mLocalShapeToWorld * Vector3(2.9, 0, 0))); - test(mSphereBody->testPointInside(mLocalShapeToWorld * Vector3(-2.9, 0, 0))); - test(mSphereBody->testPointInside(mLocalShapeToWorld * Vector3(0, 2.9, 0))); - test(mSphereBody->testPointInside(mLocalShapeToWorld * Vector3(0, -2.9, 0))); - test(mSphereBody->testPointInside(mLocalShapeToWorld * Vector3(0, 0, 2.9))); - test(mSphereBody->testPointInside(mLocalShapeToWorld * Vector3(0, 0, 2.9))); - test(mSphereBody->testPointInside(mLocalShapeToWorld * Vector3(-1, -2, -1.5))); - test(mSphereBody->testPointInside(mLocalShapeToWorld * Vector3(-1, 2, -1.5))); - test(mSphereBody->testPointInside(mLocalShapeToWorld * Vector3(1, -2, 1.5))); + rp3d_test(mSphereBody->testPointInside(mLocalShapeToWorld * Vector3(0, 0, 0))); + rp3d_test(mSphereBody->testPointInside(mLocalShapeToWorld * Vector3(2.9, 0, 0))); + rp3d_test(mSphereBody->testPointInside(mLocalShapeToWorld * Vector3(-2.9, 0, 0))); + rp3d_test(mSphereBody->testPointInside(mLocalShapeToWorld * Vector3(0, 2.9, 0))); + rp3d_test(mSphereBody->testPointInside(mLocalShapeToWorld * Vector3(0, -2.9, 0))); + rp3d_test(mSphereBody->testPointInside(mLocalShapeToWorld * Vector3(0, 0, 2.9))); + rp3d_test(mSphereBody->testPointInside(mLocalShapeToWorld * Vector3(0, 0, 2.9))); + rp3d_test(mSphereBody->testPointInside(mLocalShapeToWorld * Vector3(-1, -2, -1.5))); + rp3d_test(mSphereBody->testPointInside(mLocalShapeToWorld * Vector3(-1, 2, -1.5))); + rp3d_test(mSphereBody->testPointInside(mLocalShapeToWorld * Vector3(1, -2, 1.5))); - test(!mSphereBody->testPointInside(mLocalShapeToWorld * Vector3(3.1, 0, 0))); - test(!mSphereBody->testPointInside(mLocalShapeToWorld * Vector3(-3.1, 0, 0))); - test(!mSphereBody->testPointInside(mLocalShapeToWorld * Vector3(0, 3.1, 0))); - test(!mSphereBody->testPointInside(mLocalShapeToWorld * Vector3(0, -3.1, 0))); - test(!mSphereBody->testPointInside(mLocalShapeToWorld * Vector3(0, 0, 3.1))); - test(!mSphereBody->testPointInside(mLocalShapeToWorld * Vector3(0, 0, -3.1))); - test(!mSphereBody->testPointInside(mLocalShapeToWorld * Vector3(-2, -2, -2))); - test(!mSphereBody->testPointInside(mLocalShapeToWorld * Vector3(-2, 2, -1.5))); - test(!mSphereBody->testPointInside(mLocalShapeToWorld * Vector3(1.5, -2, 2.5))); + rp3d_test(!mSphereBody->testPointInside(mLocalShapeToWorld * Vector3(3.1, 0, 0))); + rp3d_test(!mSphereBody->testPointInside(mLocalShapeToWorld * Vector3(-3.1, 0, 0))); + rp3d_test(!mSphereBody->testPointInside(mLocalShapeToWorld * Vector3(0, 3.1, 0))); + rp3d_test(!mSphereBody->testPointInside(mLocalShapeToWorld * Vector3(0, -3.1, 0))); + rp3d_test(!mSphereBody->testPointInside(mLocalShapeToWorld * Vector3(0, 0, 3.1))); + rp3d_test(!mSphereBody->testPointInside(mLocalShapeToWorld * Vector3(0, 0, -3.1))); + rp3d_test(!mSphereBody->testPointInside(mLocalShapeToWorld * Vector3(-2, -2, -2))); + rp3d_test(!mSphereBody->testPointInside(mLocalShapeToWorld * Vector3(-2, 2, -1.5))); + rp3d_test(!mSphereBody->testPointInside(mLocalShapeToWorld * Vector3(1.5, -2, 2.5))); // Tests with ProxySphereShape - test(mSphereProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 0, 0))); - test(mSphereProxyShape->testPointInside(mLocalShapeToWorld * Vector3(2.9, 0, 0))); - test(mSphereProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-2.9, 0, 0))); - test(mSphereProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 2.9, 0))); - test(mSphereProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, -2.9, 0))); - test(mSphereProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 0, 2.9))); - test(mSphereProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 0, 2.9))); - test(mSphereProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-1, -2, -1.5))); - test(mSphereProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-1, 2, -1.5))); - test(mSphereProxyShape->testPointInside(mLocalShapeToWorld * Vector3(1, -2, 1.5))); + rp3d_test(mSphereProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 0, 0))); + rp3d_test(mSphereProxyShape->testPointInside(mLocalShapeToWorld * Vector3(2.9, 0, 0))); + rp3d_test(mSphereProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-2.9, 0, 0))); + rp3d_test(mSphereProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 2.9, 0))); + rp3d_test(mSphereProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, -2.9, 0))); + rp3d_test(mSphereProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 0, 2.9))); + rp3d_test(mSphereProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 0, 2.9))); + rp3d_test(mSphereProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-1, -2, -1.5))); + rp3d_test(mSphereProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-1, 2, -1.5))); + rp3d_test(mSphereProxyShape->testPointInside(mLocalShapeToWorld * Vector3(1, -2, 1.5))); - test(!mSphereProxyShape->testPointInside(mLocalShapeToWorld * Vector3(3.1, 0, 0))); - test(!mSphereProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-3.1, 0, 0))); - test(!mSphereProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 3.1, 0))); - test(!mSphereProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, -3.1, 0))); - test(!mSphereProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 0, 3.1))); - test(!mSphereProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 0, -3.1))); - test(!mSphereProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-2, -2, -2))); - test(!mSphereProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-2, 2, -1.5))); - test(!mSphereProxyShape->testPointInside(mLocalShapeToWorld * Vector3(1.5, -2, 2.5))); + rp3d_test(!mSphereProxyShape->testPointInside(mLocalShapeToWorld * Vector3(3.1, 0, 0))); + rp3d_test(!mSphereProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-3.1, 0, 0))); + rp3d_test(!mSphereProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 3.1, 0))); + rp3d_test(!mSphereProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, -3.1, 0))); + rp3d_test(!mSphereProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 0, 3.1))); + rp3d_test(!mSphereProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 0, -3.1))); + rp3d_test(!mSphereProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-2, -2, -2))); + rp3d_test(!mSphereProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-2, 2, -1.5))); + rp3d_test(!mSphereProxyShape->testPointInside(mLocalShapeToWorld * Vector3(1.5, -2, 2.5))); } /// Test the ProxyCapsuleShape::testPointInside() and @@ -302,98 +302,98 @@ class TestPointInside : public Test { void testCapsule() { // Tests with CollisionBody - test(mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(0, 0, 0))); - test(mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(0, 5, 0))); - test(mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(0, -5, 0))); - test(mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(0, -6.9, 0))); - test(mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(0, 6.9, 0))); - test(mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(0, 0, 1.9))); - test(mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(0, 0, -1.9))); - test(mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(1.9, 0, 0))); - test(mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(-1.9, 0, 0))); - test(mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(0.9, 0, 0.9))); - test(mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(0.9, 0, -0.9))); - test(mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(0, 5, 1.9))); - test(mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(0, 5, -1.9))); - test(mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(1.9, 5, 0))); - test(mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(-1.9, 5, 0))); - test(mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(0.9, 5, 0.9))); - test(mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(0.9, 5, -0.9))); - test(mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(0, -5, 1.9))); - test(mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(0, -5, -1.9))); - test(mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(1.9, -5, 0))); - test(mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(-1.9, -5, 0))); - test(mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(0.9, -5, 0.9))); - test(mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(0.9, -5, -0.9))); - test(mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(-1.7, -4, -0.9))); - test(mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(-1, 2, 0.4))); - test(mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(1.3, 1, 1.5))); + rp3d_test(mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(0, 0, 0))); + rp3d_test(mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(0, 5, 0))); + rp3d_test(mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(0, -5, 0))); + rp3d_test(mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(0, -6.9, 0))); + rp3d_test(mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(0, 6.9, 0))); + rp3d_test(mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(0, 0, 1.9))); + rp3d_test(mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(0, 0, -1.9))); + rp3d_test(mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(1.9, 0, 0))); + rp3d_test(mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(-1.9, 0, 0))); + rp3d_test(mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(0.9, 0, 0.9))); + rp3d_test(mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(0.9, 0, -0.9))); + rp3d_test(mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(0, 5, 1.9))); + rp3d_test(mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(0, 5, -1.9))); + rp3d_test(mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(1.9, 5, 0))); + rp3d_test(mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(-1.9, 5, 0))); + rp3d_test(mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(0.9, 5, 0.9))); + rp3d_test(mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(0.9, 5, -0.9))); + rp3d_test(mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(0, -5, 1.9))); + rp3d_test(mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(0, -5, -1.9))); + rp3d_test(mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(1.9, -5, 0))); + rp3d_test(mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(-1.9, -5, 0))); + rp3d_test(mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(0.9, -5, 0.9))); + rp3d_test(mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(0.9, -5, -0.9))); + rp3d_test(mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(-1.7, -4, -0.9))); + rp3d_test(mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(-1, 2, 0.4))); + rp3d_test(mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(1.3, 1, 1.5))); - test(!mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(0, -13.1, 0))); - test(!mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(0, 13.1, 0))); - test(!mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(0, 0, 3.1))); - test(!mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(0, 0, -3.1))); - test(!mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(3.1, 0, 0))); - test(!mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(-3.1, 0, 0))); - test(!mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(0, 5, 3.1))); - test(!mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(0, 5, -3.1))); - test(!mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(3.1, 5, 0))); - test(!mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(-3.1, 5, 0))); - test(!mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(2.5, 5, 2.6))); - test(!mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(2.5, 5, -2.7))); - test(!mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(0, -5, 3.1))); - test(!mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(0, -5, -3.1))); - test(!mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(3.1, -5, 0))); - test(!mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(-3.1, -5, 0))); - test(!mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(2.5, -5, 2.6))); - test(!mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(2.5, -5, -2.7))); + rp3d_test(!mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(0, -13.1, 0))); + rp3d_test(!mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(0, 13.1, 0))); + rp3d_test(!mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(0, 0, 3.1))); + rp3d_test(!mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(0, 0, -3.1))); + rp3d_test(!mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(3.1, 0, 0))); + rp3d_test(!mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(-3.1, 0, 0))); + rp3d_test(!mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(0, 5, 3.1))); + rp3d_test(!mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(0, 5, -3.1))); + rp3d_test(!mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(3.1, 5, 0))); + rp3d_test(!mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(-3.1, 5, 0))); + rp3d_test(!mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(2.5, 5, 2.6))); + rp3d_test(!mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(2.5, 5, -2.7))); + rp3d_test(!mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(0, -5, 3.1))); + rp3d_test(!mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(0, -5, -3.1))); + rp3d_test(!mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(3.1, -5, 0))); + rp3d_test(!mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(-3.1, -5, 0))); + rp3d_test(!mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(2.5, -5, 2.6))); + rp3d_test(!mCapsuleBody->testPointInside(mLocalShapeToWorld * Vector3(2.5, -5, -2.7))); // Tests with ProxyCapsuleShape - test(mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 0, 0))); - test(mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 5, 0))); - test(mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, -5, 0))); - test(mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, -6.9, 0))); - test(mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 6.9, 0))); - test(mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 0, 1.9))); - test(mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 0, -1.9))); - test(mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(1.9, 0, 0))); - test(mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-1.9, 0, 0))); - test(mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0.9, 0, 0.9))); - test(mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0.9, 0, -0.9))); - test(mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 5, 1.9))); - test(mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 5, -1.9))); - test(mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(1.9, 5, 0))); - test(mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-1.9, 5, 0))); - test(mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0.9, 5, 0.9))); - test(mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0.9, 5, -0.9))); - test(mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, -5, 1.9))); - test(mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, -5, -1.9))); - test(mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(1.9, -5, 0))); - test(mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-1.9, -5, 0))); - test(mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0.9, -5, 0.9))); - test(mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0.9, -5, -0.9))); - test(mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-1.7, -4, -0.9))); - test(mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-1, 2, 0.4))); - test(mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(1.3, 1, 1.5))); + rp3d_test(mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 0, 0))); + rp3d_test(mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 5, 0))); + rp3d_test(mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, -5, 0))); + rp3d_test(mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, -6.9, 0))); + rp3d_test(mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 6.9, 0))); + rp3d_test(mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 0, 1.9))); + rp3d_test(mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 0, -1.9))); + rp3d_test(mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(1.9, 0, 0))); + rp3d_test(mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-1.9, 0, 0))); + rp3d_test(mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0.9, 0, 0.9))); + rp3d_test(mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0.9, 0, -0.9))); + rp3d_test(mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 5, 1.9))); + rp3d_test(mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 5, -1.9))); + rp3d_test(mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(1.9, 5, 0))); + rp3d_test(mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-1.9, 5, 0))); + rp3d_test(mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0.9, 5, 0.9))); + rp3d_test(mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0.9, 5, -0.9))); + rp3d_test(mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, -5, 1.9))); + rp3d_test(mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, -5, -1.9))); + rp3d_test(mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(1.9, -5, 0))); + rp3d_test(mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-1.9, -5, 0))); + rp3d_test(mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0.9, -5, 0.9))); + rp3d_test(mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0.9, -5, -0.9))); + rp3d_test(mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-1.7, -4, -0.9))); + rp3d_test(mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-1, 2, 0.4))); + rp3d_test(mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(1.3, 1, 1.5))); - test(!mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, -13.1, 0))); - test(!mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 13.1, 0))); - test(!mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 0, 3.1))); - test(!mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 0, -3.1))); - test(!mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(3.1, 0, 0))); - test(!mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-3.1, 0, 0))); - test(!mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 5, 3.1))); - test(!mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 5, -3.1))); - test(!mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(3.1, 5, 0))); - test(!mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-3.1, 5, 0))); - test(!mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(2.5, 5, 2.6))); - test(!mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(2.5, 5, -2.7))); - test(!mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, -5, 3.1))); - test(!mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, -5, -3.1))); - test(!mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(3.1, -5, 0))); - test(!mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-3.1, -5, 0))); - test(!mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(2.5, -5, 2.6))); - test(!mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(2.5, -5, -2.7))); + rp3d_test(!mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, -13.1, 0))); + rp3d_test(!mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 13.1, 0))); + rp3d_test(!mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 0, 3.1))); + rp3d_test(!mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 0, -3.1))); + rp3d_test(!mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(3.1, 0, 0))); + rp3d_test(!mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-3.1, 0, 0))); + rp3d_test(!mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 5, 3.1))); + rp3d_test(!mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 5, -3.1))); + rp3d_test(!mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(3.1, 5, 0))); + rp3d_test(!mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-3.1, 5, 0))); + rp3d_test(!mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(2.5, 5, 2.6))); + rp3d_test(!mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(2.5, 5, -2.7))); + rp3d_test(!mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, -5, 3.1))); + rp3d_test(!mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, -5, -3.1))); + rp3d_test(!mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(3.1, -5, 0))); + rp3d_test(!mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-3.1, -5, 0))); + rp3d_test(!mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(2.5, -5, 2.6))); + rp3d_test(!mCapsuleProxyShape->testPointInside(mLocalShapeToWorld * Vector3(2.5, -5, -2.7))); } /// Test the ProxyConvexMeshShape::testPointInside() and @@ -401,101 +401,101 @@ class TestPointInside : public Test { void testConvexMesh() { // Tests with CollisionBody - test(mConvexMeshBody->testPointInside(mLocalShapeToWorld * Vector3(0, 0, 0))); - test(mConvexMeshBody->testPointInside(mLocalShapeToWorld * Vector3(-1.9, 0, 0))); - test(mConvexMeshBody->testPointInside(mLocalShapeToWorld * Vector3(1.9, 0, 0))); - test(mConvexMeshBody->testPointInside(mLocalShapeToWorld * Vector3(0, -2.9, 0))); - test(mConvexMeshBody->testPointInside(mLocalShapeToWorld * Vector3(0, 2.9, 0))); - test(mConvexMeshBody->testPointInside(mLocalShapeToWorld * Vector3(0, 0, -3.9))); - test(mConvexMeshBody->testPointInside(mLocalShapeToWorld * Vector3(0, 0, 3.9))); - test(mConvexMeshBody->testPointInside(mLocalShapeToWorld * Vector3(-1.9, -2.9, -3.9))); - test(mConvexMeshBody->testPointInside(mLocalShapeToWorld * Vector3(1.9, 2.9, 3.9))); - test(mConvexMeshBody->testPointInside(mLocalShapeToWorld * Vector3(-1, -2, -1.5))); - test(mConvexMeshBody->testPointInside(mLocalShapeToWorld * Vector3(-1, 2, -2.5))); - test(mConvexMeshBody->testPointInside(mLocalShapeToWorld * Vector3(1, -2, 3.5))); + rp3d_test(mConvexMeshBody->testPointInside(mLocalShapeToWorld * Vector3(0, 0, 0))); + rp3d_test(mConvexMeshBody->testPointInside(mLocalShapeToWorld * Vector3(-1.9, 0, 0))); + rp3d_test(mConvexMeshBody->testPointInside(mLocalShapeToWorld * Vector3(1.9, 0, 0))); + rp3d_test(mConvexMeshBody->testPointInside(mLocalShapeToWorld * Vector3(0, -2.9, 0))); + rp3d_test(mConvexMeshBody->testPointInside(mLocalShapeToWorld * Vector3(0, 2.9, 0))); + rp3d_test(mConvexMeshBody->testPointInside(mLocalShapeToWorld * Vector3(0, 0, -3.9))); + rp3d_test(mConvexMeshBody->testPointInside(mLocalShapeToWorld * Vector3(0, 0, 3.9))); + rp3d_test(mConvexMeshBody->testPointInside(mLocalShapeToWorld * Vector3(-1.9, -2.9, -3.9))); + rp3d_test(mConvexMeshBody->testPointInside(mLocalShapeToWorld * Vector3(1.9, 2.9, 3.9))); + rp3d_test(mConvexMeshBody->testPointInside(mLocalShapeToWorld * Vector3(-1, -2, -1.5))); + rp3d_test(mConvexMeshBody->testPointInside(mLocalShapeToWorld * Vector3(-1, 2, -2.5))); + rp3d_test(mConvexMeshBody->testPointInside(mLocalShapeToWorld * Vector3(1, -2, 3.5))); - test(!mConvexMeshBody->testPointInside(mLocalShapeToWorld * Vector3(-2.1, 0, 0))); - test(!mConvexMeshBody->testPointInside(mLocalShapeToWorld * Vector3(2.1, 0, 0))); - test(!mConvexMeshBody->testPointInside(mLocalShapeToWorld * Vector3(0, -3.1, 0))); - test(!mConvexMeshBody->testPointInside(mLocalShapeToWorld * Vector3(0, 3.1, 0))); - test(!mConvexMeshBody->testPointInside(mLocalShapeToWorld * Vector3(0, 0, -4.1))); - test(!mConvexMeshBody->testPointInside(mLocalShapeToWorld * Vector3(0, 0, 4.1))); - test(!mConvexMeshBody->testPointInside(mLocalShapeToWorld * Vector3(-2.1, -3.1, -4.1))); - test(!mConvexMeshBody->testPointInside(mLocalShapeToWorld * Vector3(2.1, 3.1, 4.1))); - test(!mConvexMeshBody->testPointInside(mLocalShapeToWorld * Vector3(-10, -2, -1.5))); - test(!mConvexMeshBody->testPointInside(mLocalShapeToWorld * Vector3(-1, 4, -2.5))); - test(!mConvexMeshBody->testPointInside(mLocalShapeToWorld * Vector3(1, -2, 4.5))); + rp3d_test(!mConvexMeshBody->testPointInside(mLocalShapeToWorld * Vector3(-2.1, 0, 0))); + rp3d_test(!mConvexMeshBody->testPointInside(mLocalShapeToWorld * Vector3(2.1, 0, 0))); + rp3d_test(!mConvexMeshBody->testPointInside(mLocalShapeToWorld * Vector3(0, -3.1, 0))); + rp3d_test(!mConvexMeshBody->testPointInside(mLocalShapeToWorld * Vector3(0, 3.1, 0))); + rp3d_test(!mConvexMeshBody->testPointInside(mLocalShapeToWorld * Vector3(0, 0, -4.1))); + rp3d_test(!mConvexMeshBody->testPointInside(mLocalShapeToWorld * Vector3(0, 0, 4.1))); + rp3d_test(!mConvexMeshBody->testPointInside(mLocalShapeToWorld * Vector3(-2.1, -3.1, -4.1))); + rp3d_test(!mConvexMeshBody->testPointInside(mLocalShapeToWorld * Vector3(2.1, 3.1, 4.1))); + rp3d_test(!mConvexMeshBody->testPointInside(mLocalShapeToWorld * Vector3(-10, -2, -1.5))); + rp3d_test(!mConvexMeshBody->testPointInside(mLocalShapeToWorld * Vector3(-1, 4, -2.5))); + rp3d_test(!mConvexMeshBody->testPointInside(mLocalShapeToWorld * Vector3(1, -2, 4.5))); // Tests with ProxyConvexMeshShape - test(mConvexMeshProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 0, 0))); - test(mConvexMeshProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-1.9, 0, 0))); - test(mConvexMeshProxyShape->testPointInside(mLocalShapeToWorld * Vector3(1.9, 0, 0))); - test(mConvexMeshProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, -2.9, 0))); - test(mConvexMeshProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 2.9, 0))); - test(mConvexMeshProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 0, -3.9))); - test(mConvexMeshProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 0, 3.9))); - test(mConvexMeshProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-1.9, -2.9, -3.9))); - test(mConvexMeshProxyShape->testPointInside(mLocalShapeToWorld * Vector3(1.9, 2.9, 3.9))); - test(mConvexMeshProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-1, -2, -1.5))); - test(mConvexMeshProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-1, 2, -2.5))); - test(mConvexMeshProxyShape->testPointInside(mLocalShapeToWorld * Vector3(1, -2, 3.5))); + rp3d_test(mConvexMeshProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 0, 0))); + rp3d_test(mConvexMeshProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-1.9, 0, 0))); + rp3d_test(mConvexMeshProxyShape->testPointInside(mLocalShapeToWorld * Vector3(1.9, 0, 0))); + rp3d_test(mConvexMeshProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, -2.9, 0))); + rp3d_test(mConvexMeshProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 2.9, 0))); + rp3d_test(mConvexMeshProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 0, -3.9))); + rp3d_test(mConvexMeshProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 0, 3.9))); + rp3d_test(mConvexMeshProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-1.9, -2.9, -3.9))); + rp3d_test(mConvexMeshProxyShape->testPointInside(mLocalShapeToWorld * Vector3(1.9, 2.9, 3.9))); + rp3d_test(mConvexMeshProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-1, -2, -1.5))); + rp3d_test(mConvexMeshProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-1, 2, -2.5))); + rp3d_test(mConvexMeshProxyShape->testPointInside(mLocalShapeToWorld * Vector3(1, -2, 3.5))); - test(!mConvexMeshProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-2.1, 0, 0))); - test(!mConvexMeshProxyShape->testPointInside(mLocalShapeToWorld * Vector3(2.1, 0, 0))); - test(!mConvexMeshProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, -3.1, 0))); - test(!mConvexMeshProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 3.1, 0))); - test(!mConvexMeshProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 0, -4.1))); - test(!mConvexMeshProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 0, 4.1))); - test(!mConvexMeshProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-2.1, -3.1, -4.1))); - test(!mConvexMeshProxyShape->testPointInside(mLocalShapeToWorld * Vector3(2.1, 3.1, 4.1))); - test(!mConvexMeshProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-10, -2, -1.5))); - test(!mConvexMeshProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-1, 4, -2.5))); - test(!mConvexMeshProxyShape->testPointInside(mLocalShapeToWorld * Vector3(1, -2, 4.5))); + rp3d_test(!mConvexMeshProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-2.1, 0, 0))); + rp3d_test(!mConvexMeshProxyShape->testPointInside(mLocalShapeToWorld * Vector3(2.1, 0, 0))); + rp3d_test(!mConvexMeshProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, -3.1, 0))); + rp3d_test(!mConvexMeshProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 3.1, 0))); + rp3d_test(!mConvexMeshProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 0, -4.1))); + rp3d_test(!mConvexMeshProxyShape->testPointInside(mLocalShapeToWorld * Vector3(0, 0, 4.1))); + rp3d_test(!mConvexMeshProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-2.1, -3.1, -4.1))); + rp3d_test(!mConvexMeshProxyShape->testPointInside(mLocalShapeToWorld * Vector3(2.1, 3.1, 4.1))); + rp3d_test(!mConvexMeshProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-10, -2, -1.5))); + rp3d_test(!mConvexMeshProxyShape->testPointInside(mLocalShapeToWorld * Vector3(-1, 4, -2.5))); + rp3d_test(!mConvexMeshProxyShape->testPointInside(mLocalShapeToWorld * Vector3(1, -2, 4.5))); } /// Test the CollisionBody::testPointInside() method void testCompound() { // Points on the capsule - test(mCompoundBody->testPointInside(mLocalShapeToWorld * Vector3(0, 0, 0))); - test(mCompoundBody->testPointInside(mLocalShapeToWorld * Vector3(0, 3.9, 0))); - test(mCompoundBody->testPointInside(mLocalShapeToWorld * Vector3(0, -3.9, 0))); - test(mCompoundBody->testPointInside(mLocalShapeToWorld * Vector3(2.9, 0, 0))); - test(mCompoundBody->testPointInside(mLocalShapeToWorld * Vector3(-2.9, 0, 0))); - test(mCompoundBody->testPointInside(mLocalShapeToWorld * Vector3(0, 0, 2.9))); - test(mCompoundBody->testPointInside(mLocalShapeToWorld * Vector3(0, 0, -2.9))); - test(mCompoundBody->testPointInside(mLocalShapeToWorld * Vector3(1.7, 0, 1.7))); - test(mCompoundBody->testPointInside(mLocalShapeToWorld * Vector3(1.7, 0, -1.7))); - test(mCompoundBody->testPointInside(mLocalShapeToWorld * Vector3(-1.7, 0, -1.7))); - test(mCompoundBody->testPointInside(mLocalShapeToWorld * Vector3(-1.7, 0, 1.7))); - test(mCompoundBody->testPointInside(mLocalShapeToWorld * Vector3(2.9, 3.9, 0))); - test(mCompoundBody->testPointInside(mLocalShapeToWorld * Vector3(-2.9, 3.9, 0))); - test(mCompoundBody->testPointInside(mLocalShapeToWorld * Vector3(0, 3.9, 2.9))); - test(mCompoundBody->testPointInside(mLocalShapeToWorld * Vector3(0, 3.9, -2.9))); - test(mCompoundBody->testPointInside(mLocalShapeToWorld * Vector3(1.7, 3.9, 1.7))); - test(mCompoundBody->testPointInside(mLocalShapeToWorld * Vector3(1.7, 3.9, -1.7))); - test(mCompoundBody->testPointInside(mLocalShapeToWorld * Vector3(-1.7, 3.9, -1.7))); - test(mCompoundBody->testPointInside(mLocalShapeToWorld * Vector3(-1.7, 3.9, 1.7))); - test(mCompoundBody->testPointInside(mLocalShapeToWorld * Vector3(2.9, -3.9, 0))); - test(mCompoundBody->testPointInside(mLocalShapeToWorld * Vector3(-2.9, -3.9, 0))); - test(mCompoundBody->testPointInside(mLocalShapeToWorld * Vector3(0, -3.9, 2.9))); - test(mCompoundBody->testPointInside(mLocalShapeToWorld * Vector3(0, -3.9, -2.9))); - test(mCompoundBody->testPointInside(mLocalShapeToWorld * Vector3(1.7, -3.9, 1.7))); - test(mCompoundBody->testPointInside(mLocalShapeToWorld * Vector3(1.7, -3.9, -1.7))); - test(mCompoundBody->testPointInside(mLocalShapeToWorld * Vector3(-1.7, -3.9, -1.7))); - test(mCompoundBody->testPointInside(mLocalShapeToWorld * Vector3(-1.7, -3.9, 1.7))); + rp3d_test(mCompoundBody->testPointInside(mLocalShapeToWorld * Vector3(0, 0, 0))); + rp3d_test(mCompoundBody->testPointInside(mLocalShapeToWorld * Vector3(0, 3.9, 0))); + rp3d_test(mCompoundBody->testPointInside(mLocalShapeToWorld * Vector3(0, -3.9, 0))); + rp3d_test(mCompoundBody->testPointInside(mLocalShapeToWorld * Vector3(2.9, 0, 0))); + rp3d_test(mCompoundBody->testPointInside(mLocalShapeToWorld * Vector3(-2.9, 0, 0))); + rp3d_test(mCompoundBody->testPointInside(mLocalShapeToWorld * Vector3(0, 0, 2.9))); + rp3d_test(mCompoundBody->testPointInside(mLocalShapeToWorld * Vector3(0, 0, -2.9))); + rp3d_test(mCompoundBody->testPointInside(mLocalShapeToWorld * Vector3(1.7, 0, 1.7))); + rp3d_test(mCompoundBody->testPointInside(mLocalShapeToWorld * Vector3(1.7, 0, -1.7))); + rp3d_test(mCompoundBody->testPointInside(mLocalShapeToWorld * Vector3(-1.7, 0, -1.7))); + rp3d_test(mCompoundBody->testPointInside(mLocalShapeToWorld * Vector3(-1.7, 0, 1.7))); + rp3d_test(mCompoundBody->testPointInside(mLocalShapeToWorld * Vector3(2.9, 3.9, 0))); + rp3d_test(mCompoundBody->testPointInside(mLocalShapeToWorld * Vector3(-2.9, 3.9, 0))); + rp3d_test(mCompoundBody->testPointInside(mLocalShapeToWorld * Vector3(0, 3.9, 2.9))); + rp3d_test(mCompoundBody->testPointInside(mLocalShapeToWorld * Vector3(0, 3.9, -2.9))); + rp3d_test(mCompoundBody->testPointInside(mLocalShapeToWorld * Vector3(1.7, 3.9, 1.7))); + rp3d_test(mCompoundBody->testPointInside(mLocalShapeToWorld * Vector3(1.7, 3.9, -1.7))); + rp3d_test(mCompoundBody->testPointInside(mLocalShapeToWorld * Vector3(-1.7, 3.9, -1.7))); + rp3d_test(mCompoundBody->testPointInside(mLocalShapeToWorld * Vector3(-1.7, 3.9, 1.7))); + rp3d_test(mCompoundBody->testPointInside(mLocalShapeToWorld * Vector3(2.9, -3.9, 0))); + rp3d_test(mCompoundBody->testPointInside(mLocalShapeToWorld * Vector3(-2.9, -3.9, 0))); + rp3d_test(mCompoundBody->testPointInside(mLocalShapeToWorld * Vector3(0, -3.9, 2.9))); + rp3d_test(mCompoundBody->testPointInside(mLocalShapeToWorld * Vector3(0, -3.9, -2.9))); + rp3d_test(mCompoundBody->testPointInside(mLocalShapeToWorld * Vector3(1.7, -3.9, 1.7))); + rp3d_test(mCompoundBody->testPointInside(mLocalShapeToWorld * Vector3(1.7, -3.9, -1.7))); + rp3d_test(mCompoundBody->testPointInside(mLocalShapeToWorld * Vector3(-1.7, -3.9, -1.7))); + rp3d_test(mCompoundBody->testPointInside(mLocalShapeToWorld * Vector3(-1.7, -3.9, 1.7))); // Points on the sphere - test(mCompoundBody->testPointInside(mLocalShape2ToWorld * Vector3(0, 0, 0))); - test(mCompoundBody->testPointInside(mLocalShape2ToWorld * Vector3(2.9, 0, 0))); - test(mCompoundBody->testPointInside(mLocalShape2ToWorld * Vector3(-2.9, 0, 0))); - test(mCompoundBody->testPointInside(mLocalShape2ToWorld * Vector3(0, 2.9, 0))); - test(mCompoundBody->testPointInside(mLocalShape2ToWorld * Vector3(0, -2.9, 0))); - test(mCompoundBody->testPointInside(mLocalShape2ToWorld * Vector3(0, 0, 2.9))); - test(mCompoundBody->testPointInside(mLocalShape2ToWorld * Vector3(0, 0, 2.9))); - test(mCompoundBody->testPointInside(mLocalShape2ToWorld * Vector3(-1, -2, -1.5))); - test(mCompoundBody->testPointInside(mLocalShape2ToWorld * Vector3(-1, 2, -1.5))); - test(mCompoundBody->testPointInside(mLocalShape2ToWorld * Vector3(1, -2, 1.5))); + rp3d_test(mCompoundBody->testPointInside(mLocalShape2ToWorld * Vector3(0, 0, 0))); + rp3d_test(mCompoundBody->testPointInside(mLocalShape2ToWorld * Vector3(2.9, 0, 0))); + rp3d_test(mCompoundBody->testPointInside(mLocalShape2ToWorld * Vector3(-2.9, 0, 0))); + rp3d_test(mCompoundBody->testPointInside(mLocalShape2ToWorld * Vector3(0, 2.9, 0))); + rp3d_test(mCompoundBody->testPointInside(mLocalShape2ToWorld * Vector3(0, -2.9, 0))); + rp3d_test(mCompoundBody->testPointInside(mLocalShape2ToWorld * Vector3(0, 0, 2.9))); + rp3d_test(mCompoundBody->testPointInside(mLocalShape2ToWorld * Vector3(0, 0, 2.9))); + rp3d_test(mCompoundBody->testPointInside(mLocalShape2ToWorld * Vector3(-1, -2, -1.5))); + rp3d_test(mCompoundBody->testPointInside(mLocalShape2ToWorld * Vector3(-1, 2, -1.5))); + rp3d_test(mCompoundBody->testPointInside(mLocalShape2ToWorld * Vector3(1, -2, 1.5))); } }; diff --git a/test/tests/collision/TestRaycast.h b/test/tests/collision/TestRaycast.h index a2848732..892b797b 100644 --- a/test/tests/collision/TestRaycast.h +++ b/test/tests/collision/TestRaycast.h @@ -353,43 +353,43 @@ class TestRaycast : public Test { // CollisionWorld::raycast() mCallback.reset(); mWorld->raycast(ray, &mCallback); - test(mCallback.isHit); - test(mCallback.raycastInfo.body == mBoxBody); - test(mCallback.raycastInfo.proxyShape == mBoxProxyShape); - test(approxEqual(mCallback.raycastInfo.hitFraction, decimal(0.2), epsilon)); - test(approxEqual(mCallback.raycastInfo.worldPoint.x, hitPoint.x, epsilon)); - test(approxEqual(mCallback.raycastInfo.worldPoint.y, hitPoint.y, epsilon)); - test(approxEqual(mCallback.raycastInfo.worldPoint.z, hitPoint.z, epsilon)); + rp3d_test(mCallback.isHit); + rp3d_test(mCallback.raycastInfo.body == mBoxBody); + rp3d_test(mCallback.raycastInfo.proxyShape == mBoxProxyShape); + rp3d_test(approxEqual(mCallback.raycastInfo.hitFraction, decimal(0.2), epsilon)); + rp3d_test(approxEqual(mCallback.raycastInfo.worldPoint.x, hitPoint.x, epsilon)); + rp3d_test(approxEqual(mCallback.raycastInfo.worldPoint.y, hitPoint.y, epsilon)); + rp3d_test(approxEqual(mCallback.raycastInfo.worldPoint.z, hitPoint.z, epsilon)); // Correct category filter mask mCallback.reset(); mWorld->raycast(ray, &mCallback, CATEGORY1); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); // Wrong category filter mask mCallback.reset(); mWorld->raycast(ray, &mCallback, CATEGORY2); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); // CollisionBody::raycast() RaycastInfo raycastInfo2; - test(mBoxBody->raycast(ray, raycastInfo2)); - test(raycastInfo2.body == mBoxBody); - test(raycastInfo2.proxyShape == mBoxProxyShape); - test(approxEqual(raycastInfo2.hitFraction, decimal(0.2), epsilon)); - test(approxEqual(raycastInfo2.worldPoint.x, hitPoint.x, epsilon)); - test(approxEqual(raycastInfo2.worldPoint.y, hitPoint.y, epsilon)); - test(approxEqual(raycastInfo2.worldPoint.z, hitPoint.z, epsilon)); + rp3d_test(mBoxBody->raycast(ray, raycastInfo2)); + rp3d_test(raycastInfo2.body == mBoxBody); + rp3d_test(raycastInfo2.proxyShape == mBoxProxyShape); + rp3d_test(approxEqual(raycastInfo2.hitFraction, decimal(0.2), epsilon)); + rp3d_test(approxEqual(raycastInfo2.worldPoint.x, hitPoint.x, epsilon)); + rp3d_test(approxEqual(raycastInfo2.worldPoint.y, hitPoint.y, epsilon)); + rp3d_test(approxEqual(raycastInfo2.worldPoint.z, hitPoint.z, epsilon)); // ProxyCollisionShape::raycast() RaycastInfo raycastInfo3; - test(mBoxProxyShape->raycast(ray, raycastInfo3)); - test(raycastInfo3.body == mBoxBody); - test(raycastInfo3.proxyShape == mBoxProxyShape); - test(approxEqual(raycastInfo3.hitFraction, decimal(0.2), epsilon)); - test(approxEqual(raycastInfo3.worldPoint.x, hitPoint.x, epsilon)); - test(approxEqual(raycastInfo3.worldPoint.y, hitPoint.y, epsilon)); - test(approxEqual(raycastInfo3.worldPoint.z, hitPoint.z, epsilon)); + rp3d_test(mBoxProxyShape->raycast(ray, raycastInfo3)); + rp3d_test(raycastInfo3.body == mBoxBody); + rp3d_test(raycastInfo3.proxyShape == mBoxProxyShape); + rp3d_test(approxEqual(raycastInfo3.hitFraction, decimal(0.2), epsilon)); + rp3d_test(approxEqual(raycastInfo3.worldPoint.x, hitPoint.x, epsilon)); + rp3d_test(approxEqual(raycastInfo3.worldPoint.y, hitPoint.y, epsilon)); + rp3d_test(approxEqual(raycastInfo3.worldPoint.z, hitPoint.z, epsilon)); Ray ray1(mLocalShapeToWorld * Vector3(0, 0, 0), mLocalShapeToWorld * Vector3(5, 7, -1)); Ray ray2(mLocalShapeToWorld * Vector3(5, 11, 7), mLocalShapeToWorld * Vector3(17, 29, 28)); @@ -409,145 +409,145 @@ class TestRaycast : public Test { Ray ray16(mLocalShapeToWorld * Vector3(-1, 2, -5), mLocalShapeToWorld * Vector3(-1, 2, 20)); // ----- Test raycast miss ----- // - test(!mBoxBody->raycast(ray1, raycastInfo3)); - test(!mBoxProxyShape->raycast(ray1, raycastInfo3)); + rp3d_test(!mBoxBody->raycast(ray1, raycastInfo3)); + rp3d_test(!mBoxProxyShape->raycast(ray1, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray1, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray1.point1, ray1.point2, decimal(0.01)), &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray1.point1, ray1.point2, decimal(100.0)), &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); - test(!mBoxBody->raycast(ray2, raycastInfo3)); - test(!mBoxProxyShape->raycast(ray2, raycastInfo3)); + rp3d_test(!mBoxBody->raycast(ray2, raycastInfo3)); + rp3d_test(!mBoxProxyShape->raycast(ray2, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray2, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); - test(!mBoxBody->raycast(ray3, raycastInfo3)); - test(!mBoxProxyShape->raycast(ray3, raycastInfo3)); + rp3d_test(!mBoxBody->raycast(ray3, raycastInfo3)); + rp3d_test(!mBoxProxyShape->raycast(ray3, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray3, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); - test(!mBoxBody->raycast(ray4, raycastInfo3)); - test(!mBoxProxyShape->raycast(ray4, raycastInfo3)); + rp3d_test(!mBoxBody->raycast(ray4, raycastInfo3)); + rp3d_test(!mBoxProxyShape->raycast(ray4, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray4, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); - test(!mBoxBody->raycast(ray5, raycastInfo3)); - test(!mBoxProxyShape->raycast(ray5, raycastInfo3)); + rp3d_test(!mBoxBody->raycast(ray5, raycastInfo3)); + rp3d_test(!mBoxProxyShape->raycast(ray5, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray5, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); - test(!mBoxBody->raycast(ray6, raycastInfo3)); - test(!mBoxProxyShape->raycast(ray6, raycastInfo3)); + rp3d_test(!mBoxBody->raycast(ray6, raycastInfo3)); + rp3d_test(!mBoxProxyShape->raycast(ray6, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray6, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); - test(!mBoxBody->raycast(ray7, raycastInfo3)); - test(!mBoxProxyShape->raycast(ray7, raycastInfo3)); + rp3d_test(!mBoxBody->raycast(ray7, raycastInfo3)); + rp3d_test(!mBoxProxyShape->raycast(ray7, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray7, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); - test(!mBoxBody->raycast(ray8, raycastInfo3)); - test(!mBoxProxyShape->raycast(ray8, raycastInfo3)); + rp3d_test(!mBoxBody->raycast(ray8, raycastInfo3)); + rp3d_test(!mBoxProxyShape->raycast(ray8, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray8, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); - test(!mBoxBody->raycast(ray9, raycastInfo3)); - test(!mBoxProxyShape->raycast(ray9, raycastInfo3)); + rp3d_test(!mBoxBody->raycast(ray9, raycastInfo3)); + rp3d_test(!mBoxProxyShape->raycast(ray9, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray9, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); - test(!mBoxBody->raycast(ray10, raycastInfo3)); - test(!mBoxProxyShape->raycast(ray10, raycastInfo3)); + rp3d_test(!mBoxBody->raycast(ray10, raycastInfo3)); + rp3d_test(!mBoxProxyShape->raycast(ray10, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray10, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray11.point1, ray11.point2, decimal(0.01)), &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray12.point1, ray12.point2, decimal(0.01)), &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray13.point1, ray13.point2, decimal(0.01)), &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray14.point1, ray14.point2, decimal(0.01)), &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray15.point1, ray15.point2, decimal(0.01)), &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray16.point1, ray16.point2, decimal(0.01)), &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); // ----- Test raycast hits ----- // - test(mBoxBody->raycast(ray11, raycastInfo3)); - test(mBoxProxyShape->raycast(ray11, raycastInfo3)); + rp3d_test(mBoxBody->raycast(ray11, raycastInfo3)); + rp3d_test(mBoxProxyShape->raycast(ray11, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray11, &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray11.point1, ray11.point2, decimal(0.8)), &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); - test(mBoxBody->raycast(ray12, raycastInfo3)); - test(mBoxProxyShape->raycast(ray12, raycastInfo3)); + rp3d_test(mBoxBody->raycast(ray12, raycastInfo3)); + rp3d_test(mBoxProxyShape->raycast(ray12, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray12, &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray12.point1, ray12.point2, decimal(0.8)), &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); - test(mBoxBody->raycast(ray13, raycastInfo3)); - test(mBoxProxyShape->raycast(ray13, raycastInfo3)); + rp3d_test(mBoxBody->raycast(ray13, raycastInfo3)); + rp3d_test(mBoxProxyShape->raycast(ray13, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray13, &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray13.point1, ray13.point2, decimal(0.8)), &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); - test(mBoxBody->raycast(ray14, raycastInfo3)); - test(mBoxProxyShape->raycast(ray14, raycastInfo3)); + rp3d_test(mBoxBody->raycast(ray14, raycastInfo3)); + rp3d_test(mBoxProxyShape->raycast(ray14, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray14, &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray14.point1, ray14.point2, decimal(0.8)), &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); - test(mBoxBody->raycast(ray15, raycastInfo3)); - test(mBoxProxyShape->raycast(ray15, raycastInfo3)); + rp3d_test(mBoxBody->raycast(ray15, raycastInfo3)); + rp3d_test(mBoxProxyShape->raycast(ray15, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray15, &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray15.point1, ray15.point2, decimal(0.8)), &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); - test(mBoxBody->raycast(ray16, raycastInfo3)); - test(mBoxProxyShape->raycast(ray16, raycastInfo3)); + rp3d_test(mBoxBody->raycast(ray16, raycastInfo3)); + rp3d_test(mBoxProxyShape->raycast(ray16, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray16, &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray16.point1, ray16.point2, decimal(0.8)), &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); } /// Test the ProxySphereShape::raycast(), CollisionBody::raycast() and @@ -565,43 +565,43 @@ class TestRaycast : public Test { // CollisionWorld::raycast() mCallback.reset(); mWorld->raycast(ray, &mCallback); - test(mCallback.isHit); - test(mCallback.raycastInfo.body == mSphereBody); - test(mCallback.raycastInfo.proxyShape == mSphereProxyShape); - test(approxEqual(mCallback.raycastInfo.hitFraction, 0.2, epsilon)); - test(approxEqual(mCallback.raycastInfo.worldPoint.x, hitPoint.x, epsilon)); - test(approxEqual(mCallback.raycastInfo.worldPoint.y, hitPoint.y, epsilon)); - test(approxEqual(mCallback.raycastInfo.worldPoint.z, hitPoint.z, epsilon)); + rp3d_test(mCallback.isHit); + rp3d_test(mCallback.raycastInfo.body == mSphereBody); + rp3d_test(mCallback.raycastInfo.proxyShape == mSphereProxyShape); + rp3d_test(approxEqual(mCallback.raycastInfo.hitFraction, 0.2, epsilon)); + rp3d_test(approxEqual(mCallback.raycastInfo.worldPoint.x, hitPoint.x, epsilon)); + rp3d_test(approxEqual(mCallback.raycastInfo.worldPoint.y, hitPoint.y, epsilon)); + rp3d_test(approxEqual(mCallback.raycastInfo.worldPoint.z, hitPoint.z, epsilon)); // Correct category filter mask mCallback.reset(); mWorld->raycast(ray, &mCallback, CATEGORY1); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); // Wrong category filter mask mCallback.reset(); mWorld->raycast(ray, &mCallback, CATEGORY2); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); // CollisionBody::raycast() RaycastInfo raycastInfo2; - test(mSphereBody->raycast(ray, raycastInfo2)); - test(raycastInfo2.body == mSphereBody); - test(raycastInfo2.proxyShape == mSphereProxyShape); - test(approxEqual(raycastInfo2.hitFraction, 0.2, epsilon)); - test(approxEqual(raycastInfo2.worldPoint.x, hitPoint.x, epsilon)); - test(approxEqual(raycastInfo2.worldPoint.y, hitPoint.y, epsilon)); - test(approxEqual(raycastInfo2.worldPoint.z, hitPoint.z, epsilon)); + rp3d_test(mSphereBody->raycast(ray, raycastInfo2)); + rp3d_test(raycastInfo2.body == mSphereBody); + rp3d_test(raycastInfo2.proxyShape == mSphereProxyShape); + rp3d_test(approxEqual(raycastInfo2.hitFraction, 0.2, epsilon)); + rp3d_test(approxEqual(raycastInfo2.worldPoint.x, hitPoint.x, epsilon)); + rp3d_test(approxEqual(raycastInfo2.worldPoint.y, hitPoint.y, epsilon)); + rp3d_test(approxEqual(raycastInfo2.worldPoint.z, hitPoint.z, epsilon)); // ProxyCollisionShape::raycast() RaycastInfo raycastInfo3; - test(mSphereProxyShape->raycast(ray, raycastInfo3)); - test(raycastInfo3.body == mSphereBody); - test(raycastInfo3.proxyShape == mSphereProxyShape); - test(approxEqual(raycastInfo3.hitFraction, 0.2, epsilon)); - test(approxEqual(raycastInfo3.worldPoint.x, hitPoint.x, epsilon)); - test(approxEqual(raycastInfo3.worldPoint.y, hitPoint.y, epsilon)); - test(approxEqual(raycastInfo3.worldPoint.z, hitPoint.z, epsilon)); + rp3d_test(mSphereProxyShape->raycast(ray, raycastInfo3)); + rp3d_test(raycastInfo3.body == mSphereBody); + rp3d_test(raycastInfo3.proxyShape == mSphereProxyShape); + rp3d_test(approxEqual(raycastInfo3.hitFraction, 0.2, epsilon)); + rp3d_test(approxEqual(raycastInfo3.worldPoint.x, hitPoint.x, epsilon)); + rp3d_test(approxEqual(raycastInfo3.worldPoint.y, hitPoint.y, epsilon)); + rp3d_test(approxEqual(raycastInfo3.worldPoint.z, hitPoint.z, epsilon)); Ray ray1(mLocalShapeToWorld * Vector3(0, 0, 0), mLocalShapeToWorld * Vector3(5, 7, -1)); Ray ray2(mLocalShapeToWorld * Vector3(5, 11, 7), mLocalShapeToWorld * Vector3(4, 6, 7)); @@ -621,143 +621,143 @@ class TestRaycast : public Test { Ray ray16(mLocalShapeToWorld * Vector3(-1, 2, -11), mLocalShapeToWorld * Vector3(-1, 2, 30)); // ----- Test raycast miss ----- // - test(!mSphereBody->raycast(ray1, raycastInfo3)); - test(!mSphereProxyShape->raycast(ray1, raycastInfo3)); + rp3d_test(!mSphereBody->raycast(ray1, raycastInfo3)); + rp3d_test(!mSphereProxyShape->raycast(ray1, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray1, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray1.point1, ray1.point2, decimal(0.01)), &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray1.point1, ray1.point2, decimal(100.0)), &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); - test(!mSphereBody->raycast(ray2, raycastInfo3)); - test(!mSphereProxyShape->raycast(ray2, raycastInfo3)); + rp3d_test(!mSphereBody->raycast(ray2, raycastInfo3)); + rp3d_test(!mSphereProxyShape->raycast(ray2, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray2, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); - test(!mSphereBody->raycast(ray3, raycastInfo3)); - test(!mSphereProxyShape->raycast(ray3, raycastInfo3)); + rp3d_test(!mSphereBody->raycast(ray3, raycastInfo3)); + rp3d_test(!mSphereProxyShape->raycast(ray3, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray3, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); - test(!mSphereBody->raycast(ray4, raycastInfo3)); - test(!mSphereProxyShape->raycast(ray4, raycastInfo3)); + rp3d_test(!mSphereBody->raycast(ray4, raycastInfo3)); + rp3d_test(!mSphereProxyShape->raycast(ray4, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray4, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); - test(!mSphereBody->raycast(ray5, raycastInfo3)); - test(!mSphereProxyShape->raycast(ray5, raycastInfo3)); + rp3d_test(!mSphereBody->raycast(ray5, raycastInfo3)); + rp3d_test(!mSphereProxyShape->raycast(ray5, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray5, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); - test(!mSphereBody->raycast(ray6, raycastInfo3)); - test(!mSphereProxyShape->raycast(ray6, raycastInfo3)); + rp3d_test(!mSphereBody->raycast(ray6, raycastInfo3)); + rp3d_test(!mSphereProxyShape->raycast(ray6, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray6, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); - test(!mSphereBody->raycast(ray7, raycastInfo3)); - test(!mSphereProxyShape->raycast(ray7, raycastInfo3)); + rp3d_test(!mSphereBody->raycast(ray7, raycastInfo3)); + rp3d_test(!mSphereProxyShape->raycast(ray7, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray7, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); - test(!mSphereBody->raycast(ray8, raycastInfo3)); - test(!mSphereProxyShape->raycast(ray8, raycastInfo3)); + rp3d_test(!mSphereBody->raycast(ray8, raycastInfo3)); + rp3d_test(!mSphereProxyShape->raycast(ray8, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray8, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); - test(!mSphereBody->raycast(ray9, raycastInfo3)); - test(!mSphereProxyShape->raycast(ray9, raycastInfo3)); + rp3d_test(!mSphereBody->raycast(ray9, raycastInfo3)); + rp3d_test(!mSphereProxyShape->raycast(ray9, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray9, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); - test(!mSphereBody->raycast(ray10, raycastInfo3)); - test(!mSphereProxyShape->raycast(ray10, raycastInfo3)); + rp3d_test(!mSphereBody->raycast(ray10, raycastInfo3)); + rp3d_test(!mSphereProxyShape->raycast(ray10, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray10, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray11.point1, ray11.point2, decimal(0.01)), &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray12.point1, ray12.point2, decimal(0.01)), &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray13.point1, ray13.point2, decimal(0.01)), &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray14.point1, ray14.point2, decimal(0.01)), &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray15.point1, ray15.point2, decimal(0.01)), &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray16.point1, ray16.point2, decimal(0.01)), &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); // ----- Test raycast hits ----- // - test(mSphereBody->raycast(ray11, raycastInfo3)); - test(mSphereProxyShape->raycast(ray11, raycastInfo3)); + rp3d_test(mSphereBody->raycast(ray11, raycastInfo3)); + rp3d_test(mSphereProxyShape->raycast(ray11, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray11, &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray11.point1, ray11.point2, decimal(0.8)), &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); - test(mSphereBody->raycast(ray12, raycastInfo3)); - test(mSphereProxyShape->raycast(ray12, raycastInfo3)); + rp3d_test(mSphereBody->raycast(ray12, raycastInfo3)); + rp3d_test(mSphereProxyShape->raycast(ray12, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray12, &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray12.point1, ray12.point2, decimal(0.8)), &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); - test(mSphereBody->raycast(ray13, raycastInfo3)); - test(mSphereProxyShape->raycast(ray13, raycastInfo3)); + rp3d_test(mSphereBody->raycast(ray13, raycastInfo3)); + rp3d_test(mSphereProxyShape->raycast(ray13, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray13, &mCallback); mCallback.reset(); mWorld->raycast(Ray(ray13.point1, ray13.point2, decimal(0.8)), &mCallback); - test(mSphereBody->raycast(ray14, raycastInfo3)); - test(mSphereProxyShape->raycast(ray14, raycastInfo3)); + rp3d_test(mSphereBody->raycast(ray14, raycastInfo3)); + rp3d_test(mSphereProxyShape->raycast(ray14, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray14, &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray14.point1, ray14.point2, decimal(0.8)), &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); - test(mSphereBody->raycast(ray15, raycastInfo3)); - test(mSphereProxyShape->raycast(ray15, raycastInfo3)); + rp3d_test(mSphereBody->raycast(ray15, raycastInfo3)); + rp3d_test(mSphereProxyShape->raycast(ray15, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray15, &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray15.point1, ray15.point2, decimal(0.8)), &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); - test(mSphereBody->raycast(ray16, raycastInfo3)); - test(mSphereProxyShape->raycast(ray16, raycastInfo3)); + rp3d_test(mSphereBody->raycast(ray16, raycastInfo3)); + rp3d_test(mSphereProxyShape->raycast(ray16, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray16, &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray16.point1, ray16.point2, decimal(0.8)), &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); } /// Test the ProxyCapsuleShape::raycast(), CollisionBody::raycast() and @@ -785,62 +785,62 @@ class TestRaycast : public Test { // CollisionWorld::raycast() mCallback.reset(); mWorld->raycast(ray, &mCallback); - test(mCallback.isHit); - test(mCallback.raycastInfo.body == mCapsuleBody); - test(mCallback.raycastInfo.proxyShape == mCapsuleProxyShape); - test(approxEqual(mCallback.raycastInfo.hitFraction, decimal(0.2), epsilon)); - test(approxEqual(mCallback.raycastInfo.worldPoint.x, hitPoint.x, epsilon)); - test(approxEqual(mCallback.raycastInfo.worldPoint.y, hitPoint.y, epsilon)); - test(approxEqual(mCallback.raycastInfo.worldPoint.z, hitPoint.z, epsilon)); + rp3d_test(mCallback.isHit); + rp3d_test(mCallback.raycastInfo.body == mCapsuleBody); + rp3d_test(mCallback.raycastInfo.proxyShape == mCapsuleProxyShape); + rp3d_test(approxEqual(mCallback.raycastInfo.hitFraction, decimal(0.2), epsilon)); + rp3d_test(approxEqual(mCallback.raycastInfo.worldPoint.x, hitPoint.x, epsilon)); + rp3d_test(approxEqual(mCallback.raycastInfo.worldPoint.y, hitPoint.y, epsilon)); + rp3d_test(approxEqual(mCallback.raycastInfo.worldPoint.z, hitPoint.z, epsilon)); // Correct category filter mask mCallback.reset(); mWorld->raycast(ray, &mCallback, CATEGORY1); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); // Wrong category filter mask mCallback.reset(); mWorld->raycast(ray, &mCallback, CATEGORY2); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); // CollisionBody::raycast() RaycastInfo raycastInfo2; - test(mCapsuleBody->raycast(ray, raycastInfo2)); - test(raycastInfo2.body == mCapsuleBody); - test(raycastInfo2.proxyShape == mCapsuleProxyShape); - test(approxEqual(raycastInfo2.hitFraction, decimal(0.2), epsilon)); - test(approxEqual(raycastInfo2.worldPoint.x, hitPoint.x, epsilon)); - test(approxEqual(raycastInfo2.worldPoint.y, hitPoint.y, epsilon)); - test(approxEqual(raycastInfo2.worldPoint.z, hitPoint.z, epsilon)); + rp3d_test(mCapsuleBody->raycast(ray, raycastInfo2)); + rp3d_test(raycastInfo2.body == mCapsuleBody); + rp3d_test(raycastInfo2.proxyShape == mCapsuleProxyShape); + rp3d_test(approxEqual(raycastInfo2.hitFraction, decimal(0.2), epsilon)); + rp3d_test(approxEqual(raycastInfo2.worldPoint.x, hitPoint.x, epsilon)); + rp3d_test(approxEqual(raycastInfo2.worldPoint.y, hitPoint.y, epsilon)); + rp3d_test(approxEqual(raycastInfo2.worldPoint.z, hitPoint.z, epsilon)); // ProxyCollisionShape::raycast() RaycastInfo raycastInfo3; - test(mCapsuleProxyShape->raycast(ray, raycastInfo3)); - test(raycastInfo3.body == mCapsuleBody); - test(raycastInfo3.proxyShape == mCapsuleProxyShape); - test(approxEqual(raycastInfo3.hitFraction, decimal(0.2), epsilon)); - test(approxEqual(raycastInfo3.worldPoint.x, hitPoint.x, epsilon)); - test(approxEqual(raycastInfo3.worldPoint.y, hitPoint.y, epsilon)); - test(approxEqual(raycastInfo3.worldPoint.z, hitPoint.z, epsilon)); + rp3d_test(mCapsuleProxyShape->raycast(ray, raycastInfo3)); + rp3d_test(raycastInfo3.body == mCapsuleBody); + rp3d_test(raycastInfo3.proxyShape == mCapsuleProxyShape); + rp3d_test(approxEqual(raycastInfo3.hitFraction, decimal(0.2), epsilon)); + rp3d_test(approxEqual(raycastInfo3.worldPoint.x, hitPoint.x, epsilon)); + rp3d_test(approxEqual(raycastInfo3.worldPoint.y, hitPoint.y, epsilon)); + rp3d_test(approxEqual(raycastInfo3.worldPoint.z, hitPoint.z, epsilon)); RaycastInfo raycastInfo4; - test(mCapsuleProxyShape->raycast(rayTop, raycastInfo4)); - test(raycastInfo4.body == mCapsuleBody); - test(raycastInfo4.proxyShape == mCapsuleProxyShape); - test(approxEqual(raycastInfo4.hitFraction, decimal(0.2), epsilon)); - test(approxEqual(raycastInfo4.worldPoint.x, hitPointTop.x, epsilon)); - test(approxEqual(raycastInfo4.worldPoint.y, hitPointTop.y, epsilon)); - test(approxEqual(raycastInfo4.worldPoint.z, hitPointTop.z, epsilon)); + rp3d_test(mCapsuleProxyShape->raycast(rayTop, raycastInfo4)); + rp3d_test(raycastInfo4.body == mCapsuleBody); + rp3d_test(raycastInfo4.proxyShape == mCapsuleProxyShape); + rp3d_test(approxEqual(raycastInfo4.hitFraction, decimal(0.2), epsilon)); + rp3d_test(approxEqual(raycastInfo4.worldPoint.x, hitPointTop.x, epsilon)); + rp3d_test(approxEqual(raycastInfo4.worldPoint.y, hitPointTop.y, epsilon)); + rp3d_test(approxEqual(raycastInfo4.worldPoint.z, hitPointTop.z, epsilon)); // ProxyCollisionShape::raycast() RaycastInfo raycastInfo5; - test(mCapsuleProxyShape->raycast(rayBottom, raycastInfo5)); - test(raycastInfo5.body == mCapsuleBody); - test(raycastInfo5.proxyShape == mCapsuleProxyShape); - test(approxEqual(raycastInfo5.hitFraction, decimal(0.2), epsilon)); - test(approxEqual(raycastInfo5.worldPoint.x, hitPointBottom.x, epsilon)); - test(approxEqual(raycastInfo5.worldPoint.y, hitPointBottom.y, epsilon)); - test(approxEqual(raycastInfo5.worldPoint.z, hitPointBottom.z, epsilon)); + rp3d_test(mCapsuleProxyShape->raycast(rayBottom, raycastInfo5)); + rp3d_test(raycastInfo5.body == mCapsuleBody); + rp3d_test(raycastInfo5.proxyShape == mCapsuleProxyShape); + rp3d_test(approxEqual(raycastInfo5.hitFraction, decimal(0.2), epsilon)); + rp3d_test(approxEqual(raycastInfo5.worldPoint.x, hitPointBottom.x, epsilon)); + rp3d_test(approxEqual(raycastInfo5.worldPoint.y, hitPointBottom.y, epsilon)); + rp3d_test(approxEqual(raycastInfo5.worldPoint.z, hitPointBottom.z, epsilon)); Ray ray1(mLocalShapeToWorld * Vector3(0, 0, 0), mLocalShapeToWorld * Vector3(5, 7, -1)); Ray ray2(mLocalShapeToWorld * Vector3(5, 11, 7), mLocalShapeToWorld * Vector3(9, 17, 14)); @@ -860,144 +860,144 @@ class TestRaycast : public Test { Ray ray16(mLocalShapeToWorld * Vector3(-1, 2, -7), mLocalShapeToWorld * Vector3(-1, 2, 30)); // ----- Test raycast miss ----- // - test(!mCapsuleBody->raycast(ray1, raycastInfo3)); - test(!mCapsuleProxyShape->raycast(ray1, raycastInfo3)); + rp3d_test(!mCapsuleBody->raycast(ray1, raycastInfo3)); + rp3d_test(!mCapsuleProxyShape->raycast(ray1, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray1, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray1.point1, ray1.point2, decimal(0.01)), &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray1.point1, ray1.point2, decimal(100.0)), &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); - test(!mCapsuleBody->raycast(ray2, raycastInfo3)); - test(!mCapsuleProxyShape->raycast(ray2, raycastInfo3)); + rp3d_test(!mCapsuleBody->raycast(ray2, raycastInfo3)); + rp3d_test(!mCapsuleProxyShape->raycast(ray2, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray2, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); - test(!mCapsuleBody->raycast(ray3, raycastInfo3)); - test(!mCapsuleProxyShape->raycast(ray3, raycastInfo3)); + rp3d_test(!mCapsuleBody->raycast(ray3, raycastInfo3)); + rp3d_test(!mCapsuleProxyShape->raycast(ray3, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray3, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); - test(!mCapsuleBody->raycast(ray4, raycastInfo3)); - test(!mCapsuleProxyShape->raycast(ray4, raycastInfo3)); + rp3d_test(!mCapsuleBody->raycast(ray4, raycastInfo3)); + rp3d_test(!mCapsuleProxyShape->raycast(ray4, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray4, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); - test(!mCapsuleBody->raycast(ray5, raycastInfo3)); - test(!mCapsuleProxyShape->raycast(ray5, raycastInfo3)); + rp3d_test(!mCapsuleBody->raycast(ray5, raycastInfo3)); + rp3d_test(!mCapsuleProxyShape->raycast(ray5, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray5, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); - test(!mCapsuleBody->raycast(ray6, raycastInfo3)); - test(!mCapsuleProxyShape->raycast(ray6, raycastInfo3)); + rp3d_test(!mCapsuleBody->raycast(ray6, raycastInfo3)); + rp3d_test(!mCapsuleProxyShape->raycast(ray6, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray6, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); - test(!mCapsuleBody->raycast(ray7, raycastInfo3)); - test(!mCapsuleProxyShape->raycast(ray7, raycastInfo3)); + rp3d_test(!mCapsuleBody->raycast(ray7, raycastInfo3)); + rp3d_test(!mCapsuleProxyShape->raycast(ray7, raycastInfo3)); mWorld->raycast(ray7, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); - test(!mCapsuleBody->raycast(ray8, raycastInfo3)); - test(!mCapsuleProxyShape->raycast(ray8, raycastInfo3)); + rp3d_test(!mCapsuleBody->raycast(ray8, raycastInfo3)); + rp3d_test(!mCapsuleProxyShape->raycast(ray8, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray8, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); - test(!mCapsuleBody->raycast(ray9, raycastInfo3)); - test(!mCapsuleProxyShape->raycast(ray9, raycastInfo3)); + rp3d_test(!mCapsuleBody->raycast(ray9, raycastInfo3)); + rp3d_test(!mCapsuleProxyShape->raycast(ray9, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray9, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); - test(!mCapsuleBody->raycast(ray10, raycastInfo3)); - test(!mCapsuleProxyShape->raycast(ray10, raycastInfo3)); + rp3d_test(!mCapsuleBody->raycast(ray10, raycastInfo3)); + rp3d_test(!mCapsuleProxyShape->raycast(ray10, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray10, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray11.point1, ray11.point2, decimal(0.01)), &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray12.point1, ray12.point2, decimal(0.01)), &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray13.point1, ray13.point2, decimal(0.01)), &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray14.point1, ray14.point2, decimal(0.01)), &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray15.point1, ray15.point2, decimal(0.01)), &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray16.point1, ray16.point2, decimal(0.01)), &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); // ----- Test raycast hits ----- // - test(mCapsuleBody->raycast(ray11, raycastInfo3)); - test(mCapsuleProxyShape->raycast(ray11, raycastInfo3)); + rp3d_test(mCapsuleBody->raycast(ray11, raycastInfo3)); + rp3d_test(mCapsuleProxyShape->raycast(ray11, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray11, &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray11.point1, ray11.point2, decimal(0.8)), &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); - test(mCapsuleBody->raycast(ray12, raycastInfo3)); - test(mCapsuleProxyShape->raycast(ray12, raycastInfo3)); + rp3d_test(mCapsuleBody->raycast(ray12, raycastInfo3)); + rp3d_test(mCapsuleProxyShape->raycast(ray12, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray12, &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray12.point1, ray12.point2, decimal(0.8)), &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); - test(mCapsuleBody->raycast(ray13, raycastInfo3)); - test(mCapsuleProxyShape->raycast(ray13, raycastInfo3)); + rp3d_test(mCapsuleBody->raycast(ray13, raycastInfo3)); + rp3d_test(mCapsuleProxyShape->raycast(ray13, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray13, &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray13.point1, ray13.point2, decimal(0.8)), &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); - test(mCapsuleBody->raycast(ray14, raycastInfo3)); - test(mCapsuleProxyShape->raycast(ray14, raycastInfo3)); + rp3d_test(mCapsuleBody->raycast(ray14, raycastInfo3)); + rp3d_test(mCapsuleProxyShape->raycast(ray14, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray14, &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray14.point1, ray14.point2, decimal(0.8)), &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); - test(mCapsuleBody->raycast(ray15, raycastInfo3)); - test(mCapsuleProxyShape->raycast(ray15, raycastInfo3)); + rp3d_test(mCapsuleBody->raycast(ray15, raycastInfo3)); + rp3d_test(mCapsuleProxyShape->raycast(ray15, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray15, &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray15.point1, ray15.point2, decimal(0.8)), &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); - test(mCapsuleBody->raycast(ray16, raycastInfo3)); - test(mCapsuleProxyShape->raycast(ray16, raycastInfo3)); + rp3d_test(mCapsuleBody->raycast(ray16, raycastInfo3)); + rp3d_test(mCapsuleProxyShape->raycast(ray16, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray16, &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray16.point1, ray16.point2, decimal(0.8)), &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); } /// Test the ProxySphereShape::raycast(), CollisionBody::raycast() and @@ -1019,90 +1019,90 @@ class TestRaycast : public Test { mCallback.reset(); mTriangleShape->setRaycastTestType(TriangleRaycastSide::FRONT); mWorld->raycast(ray, &mCallback); - test(mCallback.isHit); - test(mCallback.raycastInfo.body == mTriangleBody); - test(mCallback.raycastInfo.proxyShape == mTriangleProxyShape); - test(approxEqual(mCallback.raycastInfo.hitFraction, 0.6666, epsilon)); - test(approxEqual(mCallback.raycastInfo.worldPoint.x, hitPoint.x, epsilon)); - test(approxEqual(mCallback.raycastInfo.worldPoint.y, hitPoint.y, epsilon)); - test(approxEqual(mCallback.raycastInfo.worldPoint.z, hitPoint.z, epsilon)); - test(approxEqual(mCallback.raycastInfo.worldNormal.x, hitNormal.x, epsilon)); - test(approxEqual(mCallback.raycastInfo.worldNormal.y, hitNormal.y, epsilon)); - test(approxEqual(mCallback.raycastInfo.worldNormal.z, hitNormal.z, epsilon)); + rp3d_test(mCallback.isHit); + rp3d_test(mCallback.raycastInfo.body == mTriangleBody); + rp3d_test(mCallback.raycastInfo.proxyShape == mTriangleProxyShape); + rp3d_test(approxEqual(mCallback.raycastInfo.hitFraction, 0.6666, epsilon)); + rp3d_test(approxEqual(mCallback.raycastInfo.worldPoint.x, hitPoint.x, epsilon)); + rp3d_test(approxEqual(mCallback.raycastInfo.worldPoint.y, hitPoint.y, epsilon)); + rp3d_test(approxEqual(mCallback.raycastInfo.worldPoint.z, hitPoint.z, epsilon)); + rp3d_test(approxEqual(mCallback.raycastInfo.worldNormal.x, hitNormal.x, epsilon)); + rp3d_test(approxEqual(mCallback.raycastInfo.worldNormal.y, hitNormal.y, epsilon)); + rp3d_test(approxEqual(mCallback.raycastInfo.worldNormal.z, hitNormal.z, epsilon)); mCallback.reset(); mTriangleShape->setRaycastTestType(TriangleRaycastSide::BACK); mWorld->raycast(rayBackward, &mCallback); - test(mCallback.isHit); - test(mCallback.raycastInfo.body == mTriangleBody); - test(mCallback.raycastInfo.proxyShape == mTriangleProxyShape); - test(approxEqual(mCallback.raycastInfo.hitFraction, 0.3333, epsilon)); - test(approxEqual(mCallback.raycastInfo.worldPoint.x, hitPoint.x, epsilon)); - test(approxEqual(mCallback.raycastInfo.worldPoint.y, hitPoint.y, epsilon)); - test(approxEqual(mCallback.raycastInfo.worldPoint.z, hitPoint.z, epsilon)); - test(approxEqual(mCallback.raycastInfo.worldNormal.x, -hitNormal.x, epsilon)); - test(approxEqual(mCallback.raycastInfo.worldNormal.y, -hitNormal.y, epsilon)); - test(approxEqual(mCallback.raycastInfo.worldNormal.z, -hitNormal.z, epsilon)); + rp3d_test(mCallback.isHit); + rp3d_test(mCallback.raycastInfo.body == mTriangleBody); + rp3d_test(mCallback.raycastInfo.proxyShape == mTriangleProxyShape); + rp3d_test(approxEqual(mCallback.raycastInfo.hitFraction, 0.3333, epsilon)); + rp3d_test(approxEqual(mCallback.raycastInfo.worldPoint.x, hitPoint.x, epsilon)); + rp3d_test(approxEqual(mCallback.raycastInfo.worldPoint.y, hitPoint.y, epsilon)); + rp3d_test(approxEqual(mCallback.raycastInfo.worldPoint.z, hitPoint.z, epsilon)); + rp3d_test(approxEqual(mCallback.raycastInfo.worldNormal.x, -hitNormal.x, epsilon)); + rp3d_test(approxEqual(mCallback.raycastInfo.worldNormal.y, -hitNormal.y, epsilon)); + rp3d_test(approxEqual(mCallback.raycastInfo.worldNormal.z, -hitNormal.z, epsilon)); mCallback.reset(); mTriangleShape->setRaycastTestType(TriangleRaycastSide::FRONT_AND_BACK); mWorld->raycast(ray, &mCallback); - test(mCallback.isHit); - test(mCallback.raycastInfo.body == mTriangleBody); - test(mCallback.raycastInfo.proxyShape == mTriangleProxyShape); - test(approxEqual(mCallback.raycastInfo.hitFraction, 0.6666, epsilon)); - test(approxEqual(mCallback.raycastInfo.worldPoint.x, hitPoint.x, epsilon)); - test(approxEqual(mCallback.raycastInfo.worldPoint.y, hitPoint.y, epsilon)); - test(approxEqual(mCallback.raycastInfo.worldPoint.z, hitPoint.z, epsilon)); - test(approxEqual(mCallback.raycastInfo.worldNormal.x, hitNormal.x, epsilon)); - test(approxEqual(mCallback.raycastInfo.worldNormal.y, hitNormal.y, epsilon)); - test(approxEqual(mCallback.raycastInfo.worldNormal.z, hitNormal.z, epsilon)); + rp3d_test(mCallback.isHit); + rp3d_test(mCallback.raycastInfo.body == mTriangleBody); + rp3d_test(mCallback.raycastInfo.proxyShape == mTriangleProxyShape); + rp3d_test(approxEqual(mCallback.raycastInfo.hitFraction, 0.6666, epsilon)); + rp3d_test(approxEqual(mCallback.raycastInfo.worldPoint.x, hitPoint.x, epsilon)); + rp3d_test(approxEqual(mCallback.raycastInfo.worldPoint.y, hitPoint.y, epsilon)); + rp3d_test(approxEqual(mCallback.raycastInfo.worldPoint.z, hitPoint.z, epsilon)); + rp3d_test(approxEqual(mCallback.raycastInfo.worldNormal.x, hitNormal.x, epsilon)); + rp3d_test(approxEqual(mCallback.raycastInfo.worldNormal.y, hitNormal.y, epsilon)); + rp3d_test(approxEqual(mCallback.raycastInfo.worldNormal.z, hitNormal.z, epsilon)); mCallback.reset(); mTriangleShape->setRaycastTestType(TriangleRaycastSide::FRONT_AND_BACK); mWorld->raycast(rayBackward, &mCallback); - test(mCallback.isHit); - test(mCallback.raycastInfo.body == mTriangleBody); - test(mCallback.raycastInfo.proxyShape == mTriangleProxyShape); - test(approxEqual(mCallback.raycastInfo.hitFraction, 0.3333, epsilon)); - test(approxEqual(mCallback.raycastInfo.worldPoint.x, hitPoint.x, epsilon)); - test(approxEqual(mCallback.raycastInfo.worldPoint.y, hitPoint.y, epsilon)); - test(approxEqual(mCallback.raycastInfo.worldPoint.z, hitPoint.z, epsilon)); - test(approxEqual(mCallback.raycastInfo.worldNormal.x, -hitNormal.x, epsilon)); - test(approxEqual(mCallback.raycastInfo.worldNormal.y, -hitNormal.y, epsilon)); - test(approxEqual(mCallback.raycastInfo.worldNormal.z, -hitNormal.z, epsilon)); + rp3d_test(mCallback.isHit); + rp3d_test(mCallback.raycastInfo.body == mTriangleBody); + rp3d_test(mCallback.raycastInfo.proxyShape == mTriangleProxyShape); + rp3d_test(approxEqual(mCallback.raycastInfo.hitFraction, 0.3333, epsilon)); + rp3d_test(approxEqual(mCallback.raycastInfo.worldPoint.x, hitPoint.x, epsilon)); + rp3d_test(approxEqual(mCallback.raycastInfo.worldPoint.y, hitPoint.y, epsilon)); + rp3d_test(approxEqual(mCallback.raycastInfo.worldPoint.z, hitPoint.z, epsilon)); + rp3d_test(approxEqual(mCallback.raycastInfo.worldNormal.x, -hitNormal.x, epsilon)); + rp3d_test(approxEqual(mCallback.raycastInfo.worldNormal.y, -hitNormal.y, epsilon)); + rp3d_test(approxEqual(mCallback.raycastInfo.worldNormal.z, -hitNormal.z, epsilon)); mTriangleShape->setRaycastTestType(TriangleRaycastSide::FRONT); // Correct category filter mask mCallback.reset(); mWorld->raycast(ray, &mCallback, CATEGORY1); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); // Wrong category filter mask mCallback.reset(); mWorld->raycast(ray, &mCallback, CATEGORY2); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); // CollisionBody::raycast() RaycastInfo raycastInfo2; - test(mTriangleBody->raycast(ray, raycastInfo2)); - test(raycastInfo2.body == mTriangleBody); - test(raycastInfo2.proxyShape == mTriangleProxyShape); - test(approxEqual(raycastInfo2.hitFraction, 0.6666, epsilon)); - test(approxEqual(raycastInfo2.worldPoint.x, hitPoint.x, epsilon)); - test(approxEqual(raycastInfo2.worldPoint.y, hitPoint.y, epsilon)); - test(approxEqual(raycastInfo2.worldPoint.z, hitPoint.z, epsilon)); + rp3d_test(mTriangleBody->raycast(ray, raycastInfo2)); + rp3d_test(raycastInfo2.body == mTriangleBody); + rp3d_test(raycastInfo2.proxyShape == mTriangleProxyShape); + rp3d_test(approxEqual(raycastInfo2.hitFraction, 0.6666, epsilon)); + rp3d_test(approxEqual(raycastInfo2.worldPoint.x, hitPoint.x, epsilon)); + rp3d_test(approxEqual(raycastInfo2.worldPoint.y, hitPoint.y, epsilon)); + rp3d_test(approxEqual(raycastInfo2.worldPoint.z, hitPoint.z, epsilon)); // ProxyCollisionShape::raycast() RaycastInfo raycastInfo3; - test(mTriangleProxyShape->raycast(ray, raycastInfo3)); - test(raycastInfo3.body == mTriangleBody); - test(raycastInfo3.proxyShape == mTriangleProxyShape); - test(approxEqual(raycastInfo3.hitFraction, 0.6666, epsilon)); - test(approxEqual(raycastInfo3.worldPoint.x, hitPoint.x, epsilon)); - test(approxEqual(raycastInfo3.worldPoint.y, hitPoint.y, epsilon)); - test(approxEqual(raycastInfo3.worldPoint.z, hitPoint.z, epsilon)); + rp3d_test(mTriangleProxyShape->raycast(ray, raycastInfo3)); + rp3d_test(raycastInfo3.body == mTriangleBody); + rp3d_test(raycastInfo3.proxyShape == mTriangleProxyShape); + rp3d_test(approxEqual(raycastInfo3.hitFraction, 0.6666, epsilon)); + rp3d_test(approxEqual(raycastInfo3.worldPoint.x, hitPoint.x, epsilon)); + rp3d_test(approxEqual(raycastInfo3.worldPoint.y, hitPoint.y, epsilon)); + rp3d_test(approxEqual(raycastInfo3.worldPoint.z, hitPoint.z, epsilon)); Ray ray1(mLocalShapeToWorld * Vector3(-10, 10, 4), mLocalShapeToWorld * Vector3(15, 6, -4)); Ray ray2(mLocalShapeToWorld * Vector3(102, 107, 5), mLocalShapeToWorld * Vector3(102, 107, -5)); @@ -1117,97 +1117,97 @@ class TestRaycast : public Test { Ray ray6Back(mLocalShapeToWorld * Vector3(102, 102, -1), mLocalShapeToWorld * Vector3(102, 101, 1)); // ----- Test raycast miss ----- // - test(!mTriangleBody->raycast(ray1, raycastInfo3)); - test(!mTriangleProxyShape->raycast(ray1, raycastInfo3)); + rp3d_test(!mTriangleBody->raycast(ray1, raycastInfo3)); + rp3d_test(!mTriangleProxyShape->raycast(ray1, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray1, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray1.point1, ray1.point2, decimal(0.01)), &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray1.point1, ray1.point2, decimal(100.0)), &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); - test(!mTriangleBody->raycast(ray2, raycastInfo3)); - test(!mTriangleProxyShape->raycast(ray2, raycastInfo3)); + rp3d_test(!mTriangleBody->raycast(ray2, raycastInfo3)); + rp3d_test(!mTriangleProxyShape->raycast(ray2, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray2, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); - test(!mTriangleBody->raycast(ray3, raycastInfo3)); - test(!mTriangleProxyShape->raycast(ray3, raycastInfo3)); + rp3d_test(!mTriangleBody->raycast(ray3, raycastInfo3)); + rp3d_test(!mTriangleProxyShape->raycast(ray3, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray3, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); // Test backward ray against front triangles (not hit should occur) mTriangleShape->setRaycastTestType(TriangleRaycastSide::FRONT); - test(!mTriangleBody->raycast(ray4Back, raycastInfo3)); - test(!mTriangleProxyShape->raycast(ray4Back, raycastInfo3)); + rp3d_test(!mTriangleBody->raycast(ray4Back, raycastInfo3)); + rp3d_test(!mTriangleProxyShape->raycast(ray4Back, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray4Back, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); - test(!mTriangleBody->raycast(ray5Back, raycastInfo3)); - test(!mTriangleProxyShape->raycast(ray5Back, raycastInfo3)); + rp3d_test(!mTriangleBody->raycast(ray5Back, raycastInfo3)); + rp3d_test(!mTriangleProxyShape->raycast(ray5Back, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray5Back, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); - test(!mTriangleBody->raycast(ray6Back, raycastInfo3)); - test(!mTriangleProxyShape->raycast(ray6Back, raycastInfo3)); + rp3d_test(!mTriangleBody->raycast(ray6Back, raycastInfo3)); + rp3d_test(!mTriangleProxyShape->raycast(ray6Back, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray6Back, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); // Test front ray against back triangles (not hit should occur) mTriangleShape->setRaycastTestType(TriangleRaycastSide::BACK); - test(!mTriangleBody->raycast(ray4, raycastInfo3)); - test(!mTriangleProxyShape->raycast(ray4, raycastInfo3)); + rp3d_test(!mTriangleBody->raycast(ray4, raycastInfo3)); + rp3d_test(!mTriangleProxyShape->raycast(ray4, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray4, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); - test(!mTriangleBody->raycast(ray5, raycastInfo3)); - test(!mTriangleProxyShape->raycast(ray5, raycastInfo3)); + rp3d_test(!mTriangleBody->raycast(ray5, raycastInfo3)); + rp3d_test(!mTriangleProxyShape->raycast(ray5, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray5, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); - test(!mTriangleBody->raycast(ray6, raycastInfo3)); - test(!mTriangleProxyShape->raycast(ray6, raycastInfo3)); + rp3d_test(!mTriangleBody->raycast(ray6, raycastInfo3)); + rp3d_test(!mTriangleProxyShape->raycast(ray6, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray6, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); // ----- Test raycast hits ----- // // Test front ray against front triangles mTriangleShape->setRaycastTestType(TriangleRaycastSide::FRONT); - test(mTriangleBody->raycast(ray4, raycastInfo3)); - test(mTriangleProxyShape->raycast(ray4, raycastInfo3)); + rp3d_test(mTriangleBody->raycast(ray4, raycastInfo3)); + rp3d_test(mTriangleProxyShape->raycast(ray4, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray4, &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray4.point1, ray4.point2, decimal(0.8)), &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); - test(mTriangleBody->raycast(ray5, raycastInfo3)); - test(mTriangleProxyShape->raycast(ray5, raycastInfo3)); + rp3d_test(mTriangleBody->raycast(ray5, raycastInfo3)); + rp3d_test(mTriangleProxyShape->raycast(ray5, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray5, &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray5.point1, ray5.point2, decimal(0.8)), &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); - test(mTriangleBody->raycast(ray6, raycastInfo3)); - test(mTriangleProxyShape->raycast(ray6, raycastInfo3)); + rp3d_test(mTriangleBody->raycast(ray6, raycastInfo3)); + rp3d_test(mTriangleProxyShape->raycast(ray6, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray6, &mCallback); mCallback.reset(); @@ -1216,26 +1216,26 @@ class TestRaycast : public Test { // Test back ray against back triangles mTriangleShape->setRaycastTestType(TriangleRaycastSide::BACK); - test(mTriangleBody->raycast(ray4Back, raycastInfo3)); - test(mTriangleProxyShape->raycast(ray4Back, raycastInfo3)); + rp3d_test(mTriangleBody->raycast(ray4Back, raycastInfo3)); + rp3d_test(mTriangleProxyShape->raycast(ray4Back, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray4Back, &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray4Back.point1, ray4Back.point2, decimal(0.8)), &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); - test(mTriangleBody->raycast(ray5Back, raycastInfo3)); - test(mTriangleProxyShape->raycast(ray5Back, raycastInfo3)); + rp3d_test(mTriangleBody->raycast(ray5Back, raycastInfo3)); + rp3d_test(mTriangleProxyShape->raycast(ray5Back, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray5Back, &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray5Back.point1, ray5Back.point2, decimal(1.0)), &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); - test(mTriangleBody->raycast(ray6Back, raycastInfo3)); - test(mTriangleProxyShape->raycast(ray6Back, raycastInfo3)); + rp3d_test(mTriangleBody->raycast(ray6Back, raycastInfo3)); + rp3d_test(mTriangleProxyShape->raycast(ray6Back, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray6Back, &mCallback); mCallback.reset(); @@ -1244,26 +1244,26 @@ class TestRaycast : public Test { // Test front ray against front-back triangles mTriangleShape->setRaycastTestType(TriangleRaycastSide::FRONT_AND_BACK); - test(mTriangleBody->raycast(ray4, raycastInfo3)); - test(mTriangleProxyShape->raycast(ray4, raycastInfo3)); + rp3d_test(mTriangleBody->raycast(ray4, raycastInfo3)); + rp3d_test(mTriangleProxyShape->raycast(ray4, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray4, &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray4.point1, ray4.point2, decimal(0.8)), &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); - test(mTriangleBody->raycast(ray5, raycastInfo3)); - test(mTriangleProxyShape->raycast(ray5, raycastInfo3)); + rp3d_test(mTriangleBody->raycast(ray5, raycastInfo3)); + rp3d_test(mTriangleProxyShape->raycast(ray5, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray5, &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray5.point1, ray5.point2, decimal(0.8)), &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); - test(mTriangleBody->raycast(ray6, raycastInfo3)); - test(mTriangleProxyShape->raycast(ray6, raycastInfo3)); + rp3d_test(mTriangleBody->raycast(ray6, raycastInfo3)); + rp3d_test(mTriangleProxyShape->raycast(ray6, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray6, &mCallback); mCallback.reset(); @@ -1272,26 +1272,26 @@ class TestRaycast : public Test { // Test back ray against front-back triangles mTriangleShape->setRaycastTestType(TriangleRaycastSide::FRONT_AND_BACK); - test(mTriangleBody->raycast(ray4Back, raycastInfo3)); - test(mTriangleProxyShape->raycast(ray4Back, raycastInfo3)); + rp3d_test(mTriangleBody->raycast(ray4Back, raycastInfo3)); + rp3d_test(mTriangleProxyShape->raycast(ray4Back, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray4Back, &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray4Back.point1, ray4Back.point2, decimal(0.8)), &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); - test(mTriangleBody->raycast(ray5Back, raycastInfo3)); - test(mTriangleProxyShape->raycast(ray5Back, raycastInfo3)); + rp3d_test(mTriangleBody->raycast(ray5Back, raycastInfo3)); + rp3d_test(mTriangleProxyShape->raycast(ray5Back, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray5Back, &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray5Back.point1, ray5Back.point2, decimal(1.0)), &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); - test(mTriangleBody->raycast(ray6Back, raycastInfo3)); - test(mTriangleProxyShape->raycast(ray6Back, raycastInfo3)); + rp3d_test(mTriangleBody->raycast(ray6Back, raycastInfo3)); + rp3d_test(mTriangleProxyShape->raycast(ray6Back, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray6Back, &mCallback); mCallback.reset(); @@ -1313,43 +1313,43 @@ class TestRaycast : public Test { // CollisionWorld::raycast() mCallback.reset(); mWorld->raycast(ray, &mCallback); - test(mCallback.isHit); - test(mCallback.raycastInfo.body == mConvexMeshBody); - test(mCallback.raycastInfo.proxyShape == mConvexMeshProxyShape); - test(approxEqual(mCallback.raycastInfo.hitFraction, decimal(0.2), epsilon)); - test(approxEqual(mCallback.raycastInfo.worldPoint.x, hitPoint.x, epsilon)); - test(approxEqual(mCallback.raycastInfo.worldPoint.y, hitPoint.y, epsilon)); - test(approxEqual(mCallback.raycastInfo.worldPoint.z, hitPoint.z, epsilon)); + rp3d_test(mCallback.isHit); + rp3d_test(mCallback.raycastInfo.body == mConvexMeshBody); + rp3d_test(mCallback.raycastInfo.proxyShape == mConvexMeshProxyShape); + rp3d_test(approxEqual(mCallback.raycastInfo.hitFraction, decimal(0.2), epsilon)); + rp3d_test(approxEqual(mCallback.raycastInfo.worldPoint.x, hitPoint.x, epsilon)); + rp3d_test(approxEqual(mCallback.raycastInfo.worldPoint.y, hitPoint.y, epsilon)); + rp3d_test(approxEqual(mCallback.raycastInfo.worldPoint.z, hitPoint.z, epsilon)); // Correct category filter mask mCallback.reset(); mWorld->raycast(ray, &mCallback, CATEGORY2); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); // Wrong category filter mask mCallback.reset(); mWorld->raycast(ray, &mCallback, CATEGORY1); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); // CollisionBody::raycast() RaycastInfo raycastInfo2; - test(mConvexMeshBody->raycast(ray, raycastInfo2)); - test(raycastInfo2.body == mConvexMeshBody); - test(raycastInfo2.proxyShape == mConvexMeshProxyShape); - test(approxEqual(raycastInfo2.hitFraction, decimal(0.2), epsilon)); - test(approxEqual(raycastInfo2.worldPoint.x, hitPoint.x, epsilon)); - test(approxEqual(raycastInfo2.worldPoint.y, hitPoint.y, epsilon)); - test(approxEqual(raycastInfo2.worldPoint.z, hitPoint.z, epsilon)); + rp3d_test(mConvexMeshBody->raycast(ray, raycastInfo2)); + rp3d_test(raycastInfo2.body == mConvexMeshBody); + rp3d_test(raycastInfo2.proxyShape == mConvexMeshProxyShape); + rp3d_test(approxEqual(raycastInfo2.hitFraction, decimal(0.2), epsilon)); + rp3d_test(approxEqual(raycastInfo2.worldPoint.x, hitPoint.x, epsilon)); + rp3d_test(approxEqual(raycastInfo2.worldPoint.y, hitPoint.y, epsilon)); + rp3d_test(approxEqual(raycastInfo2.worldPoint.z, hitPoint.z, epsilon)); // ProxyCollisionShape::raycast() RaycastInfo raycastInfo4; - test(mConvexMeshProxyShape->raycast(ray, raycastInfo4)); - test(raycastInfo4.body == mConvexMeshBody); - test(raycastInfo4.proxyShape == mConvexMeshProxyShape); - test(approxEqual(raycastInfo4.hitFraction, decimal(0.2), epsilon)); - test(approxEqual(raycastInfo4.worldPoint.x, hitPoint.x, epsilon)); - test(approxEqual(raycastInfo4.worldPoint.y, hitPoint.y, epsilon)); - test(approxEqual(raycastInfo4.worldPoint.z, hitPoint.z, epsilon)); + rp3d_test(mConvexMeshProxyShape->raycast(ray, raycastInfo4)); + rp3d_test(raycastInfo4.body == mConvexMeshBody); + rp3d_test(raycastInfo4.proxyShape == mConvexMeshProxyShape); + rp3d_test(approxEqual(raycastInfo4.hitFraction, decimal(0.2), epsilon)); + rp3d_test(approxEqual(raycastInfo4.worldPoint.x, hitPoint.x, epsilon)); + rp3d_test(approxEqual(raycastInfo4.worldPoint.y, hitPoint.y, epsilon)); + rp3d_test(approxEqual(raycastInfo4.worldPoint.z, hitPoint.z, epsilon)); Ray ray1(mLocalShapeToWorld * Vector3(0, 0, 0), mLocalShapeToWorld * Vector3(5, 7, -1)); Ray ray2(mLocalShapeToWorld * Vector3(5, 11, 7), mLocalShapeToWorld * Vector3(17, 29, 28)); @@ -1370,145 +1370,145 @@ class TestRaycast : public Test { // ----- Test raycast miss ----- // RaycastInfo raycastInfo3; - test(!mConvexMeshBody->raycast(ray1, raycastInfo3)); - test(!mConvexMeshProxyShape->raycast(ray1, raycastInfo3)); + rp3d_test(!mConvexMeshBody->raycast(ray1, raycastInfo3)); + rp3d_test(!mConvexMeshProxyShape->raycast(ray1, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray1, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray1.point1, ray1.point2, decimal(0.01)), &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray1.point1, ray1.point2, decimal(100.0)), &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); - test(!mConvexMeshBody->raycast(ray2, raycastInfo3)); - test(!mConvexMeshProxyShape->raycast(ray2, raycastInfo3)); + rp3d_test(!mConvexMeshBody->raycast(ray2, raycastInfo3)); + rp3d_test(!mConvexMeshProxyShape->raycast(ray2, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray2, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); - test(!mConvexMeshBody->raycast(ray3, raycastInfo3)); - test(!mConvexMeshProxyShape->raycast(ray3, raycastInfo3)); + rp3d_test(!mConvexMeshBody->raycast(ray3, raycastInfo3)); + rp3d_test(!mConvexMeshProxyShape->raycast(ray3, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray3, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); - test(!mConvexMeshBody->raycast(ray4, raycastInfo3)); - test(!mConvexMeshProxyShape->raycast(ray4, raycastInfo3)); + rp3d_test(!mConvexMeshBody->raycast(ray4, raycastInfo3)); + rp3d_test(!mConvexMeshProxyShape->raycast(ray4, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray4, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); - test(!mConvexMeshBody->raycast(ray5, raycastInfo3)); - test(!mConvexMeshProxyShape->raycast(ray5, raycastInfo3)); + rp3d_test(!mConvexMeshBody->raycast(ray5, raycastInfo3)); + rp3d_test(!mConvexMeshProxyShape->raycast(ray5, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray5, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); - test(!mConvexMeshBody->raycast(ray6, raycastInfo3)); - test(!mConvexMeshProxyShape->raycast(ray6, raycastInfo3)); + rp3d_test(!mConvexMeshBody->raycast(ray6, raycastInfo3)); + rp3d_test(!mConvexMeshProxyShape->raycast(ray6, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray6, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); - test(!mConvexMeshBody->raycast(ray7, raycastInfo3)); - test(!mConvexMeshProxyShape->raycast(ray7, raycastInfo3)); + rp3d_test(!mConvexMeshBody->raycast(ray7, raycastInfo3)); + rp3d_test(!mConvexMeshProxyShape->raycast(ray7, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray7, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); - test(!mConvexMeshBody->raycast(ray8, raycastInfo3)); - test(!mConvexMeshProxyShape->raycast(ray8, raycastInfo3)); + rp3d_test(!mConvexMeshBody->raycast(ray8, raycastInfo3)); + rp3d_test(!mConvexMeshProxyShape->raycast(ray8, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray8, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); - test(!mConvexMeshBody->raycast(ray9, raycastInfo3)); - test(!mConvexMeshProxyShape->raycast(ray9, raycastInfo3)); + rp3d_test(!mConvexMeshBody->raycast(ray9, raycastInfo3)); + rp3d_test(!mConvexMeshProxyShape->raycast(ray9, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray9, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); - test(!mConvexMeshBody->raycast(ray10, raycastInfo3)); - test(!mConvexMeshProxyShape->raycast(ray10, raycastInfo3)); + rp3d_test(!mConvexMeshBody->raycast(ray10, raycastInfo3)); + rp3d_test(!mConvexMeshProxyShape->raycast(ray10, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray10, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray11.point1, ray11.point2, decimal(0.01)), &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray12.point1, ray12.point2, decimal(0.01)), &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray13.point1, ray13.point2, decimal(0.01)), &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray14.point1, ray14.point2, decimal(0.01)), &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray15.point1, ray15.point2, decimal(0.01)), &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray16.point1, ray16.point2, decimal(0.01)), &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); // ----- Test raycast hits ----- // - test(mConvexMeshBody->raycast(ray11, raycastInfo3)); - test(mConvexMeshProxyShape->raycast(ray11, raycastInfo3)); + rp3d_test(mConvexMeshBody->raycast(ray11, raycastInfo3)); + rp3d_test(mConvexMeshProxyShape->raycast(ray11, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray11, &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray11.point1, ray11.point2, decimal(0.8)), &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); - test(mConvexMeshBody->raycast(ray12, raycastInfo3)); - test(mConvexMeshProxyShape->raycast(ray12, raycastInfo3)); + rp3d_test(mConvexMeshBody->raycast(ray12, raycastInfo3)); + rp3d_test(mConvexMeshProxyShape->raycast(ray12, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray12, &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray12.point1, ray12.point2, decimal(0.8)), &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); - test(mConvexMeshBody->raycast(ray13, raycastInfo3)); - test(mConvexMeshProxyShape->raycast(ray13, raycastInfo3)); + rp3d_test(mConvexMeshBody->raycast(ray13, raycastInfo3)); + rp3d_test(mConvexMeshProxyShape->raycast(ray13, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray13, &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray13.point1, ray13.point2, decimal(0.8)), &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); - test(mConvexMeshBody->raycast(ray14, raycastInfo3)); - test(mConvexMeshProxyShape->raycast(ray14, raycastInfo3)); + rp3d_test(mConvexMeshBody->raycast(ray14, raycastInfo3)); + rp3d_test(mConvexMeshProxyShape->raycast(ray14, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray14, &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray14.point1, ray14.point2, decimal(0.8)), &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); - test(mConvexMeshBody->raycast(ray15, raycastInfo3)); - test(mConvexMeshProxyShape->raycast(ray15, raycastInfo3)); + rp3d_test(mConvexMeshBody->raycast(ray15, raycastInfo3)); + rp3d_test(mConvexMeshProxyShape->raycast(ray15, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray15, &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray15.point1, ray15.point2, decimal(0.8)), &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); - test(mConvexMeshBody->raycast(ray16, raycastInfo3)); - test(mConvexMeshProxyShape->raycast(ray16, raycastInfo3)); + rp3d_test(mConvexMeshBody->raycast(ray16, raycastInfo3)); + rp3d_test(mConvexMeshProxyShape->raycast(ray16, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray16, &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray16.point1, ray16.point2, decimal(0.8)), &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); } /// Test the CollisionBody::raycast() and @@ -1530,61 +1530,61 @@ class TestRaycast : public Test { // Correct category filter mask mCallback.reset(); mWorld->raycast(ray1, &mCallback, CATEGORY2); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); // Wrong category filter mask mCallback.reset(); mWorld->raycast(ray1, &mCallback, CATEGORY1); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); RaycastInfo raycastInfo; - test(mCompoundBody->raycast(ray1, raycastInfo)); + rp3d_test(mCompoundBody->raycast(ray1, raycastInfo)); mCallback.reset(); mWorld->raycast(ray1, &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray1.point1, ray1.point2, decimal(0.8)), &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); - test(mCompoundBody->raycast(ray2, raycastInfo)); + rp3d_test(mCompoundBody->raycast(ray2, raycastInfo)); mCallback.reset(); mWorld->raycast(ray2, &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray2.point1, ray2.point2, decimal(0.8)), &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); - test(mCompoundBody->raycast(ray3, raycastInfo)); + rp3d_test(mCompoundBody->raycast(ray3, raycastInfo)); mCallback.reset(); mWorld->raycast(ray3, &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray3.point1, ray3.point2, decimal(0.8)), &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); - test(mCompoundBody->raycast(ray4, raycastInfo)); + rp3d_test(mCompoundBody->raycast(ray4, raycastInfo)); mCallback.reset(); mWorld->raycast(ray4, &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray4.point1, ray4.point2, decimal(0.8)), &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); - test(mCompoundBody->raycast(ray5, raycastInfo)); + rp3d_test(mCompoundBody->raycast(ray5, raycastInfo)); mCallback.reset(); mWorld->raycast(ray5, &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray5.point1, ray5.point2, decimal(0.8)), &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); - test(mCompoundBody->raycast(ray6, raycastInfo)); + rp3d_test(mCompoundBody->raycast(ray6, raycastInfo)); mCallback.reset(); mWorld->raycast(ray6, &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray6.point1, ray6.point2, decimal(0.8)), &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); // Raycast hit agains the capsule shape Ray ray11(mLocalShapeToWorld * Vector3(4, 1, 1.5), mLocalShapeToWorld * Vector3(-30, 1.5, 2)); @@ -1596,53 +1596,53 @@ class TestRaycast : public Test { mCallback.shapeToTest = mCompoundCapsuleProxyShape; - test(mCompoundBody->raycast(ray11, raycastInfo)); + rp3d_test(mCompoundBody->raycast(ray11, raycastInfo)); mCallback.reset(); mWorld->raycast(ray11, &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray11.point1, ray11.point2, decimal(0.8)), &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); - test(mCompoundBody->raycast(ray12, raycastInfo)); + rp3d_test(mCompoundBody->raycast(ray12, raycastInfo)); mCallback.reset(); mWorld->raycast(ray12, &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray12.point1, ray12.point2, decimal(0.8)), &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); - test(mCompoundBody->raycast(ray13, raycastInfo)); + rp3d_test(mCompoundBody->raycast(ray13, raycastInfo)); mCallback.reset(); mWorld->raycast(ray13, &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray13.point1, ray13.point2, decimal(0.8)), &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); - test(mCompoundBody->raycast(ray14, raycastInfo)); + rp3d_test(mCompoundBody->raycast(ray14, raycastInfo)); mCallback.reset(); mWorld->raycast(ray14, &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray14.point1, ray14.point2, decimal(0.8)), &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); - test(mCompoundBody->raycast(ray15, raycastInfo)); + rp3d_test(mCompoundBody->raycast(ray15, raycastInfo)); mCallback.reset(); mWorld->raycast(ray15, &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray15.point1, ray15.point2, decimal(0.8)), &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); - test(mCompoundBody->raycast(ray16, raycastInfo)); + rp3d_test(mCompoundBody->raycast(ray16, raycastInfo)); mCallback.reset(); mWorld->raycast(ray16, &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray16.point1, ray16.point2, decimal(0.8)), &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); } @@ -1659,63 +1659,63 @@ class TestRaycast : public Test { // CollisionWorld::raycast() mCallback.reset(); mWorld->raycast(ray, &mCallback); - test(mCallback.isHit); - test(mCallback.raycastInfo.body == mConcaveMeshBody); - test(mCallback.raycastInfo.proxyShape == mConcaveMeshProxyShape); - test(approxEqual(mCallback.raycastInfo.hitFraction, decimal(0.2), epsilon)); - test(approxEqual(mCallback.raycastInfo.worldPoint.x, hitPoint.x, epsilon)); - test(approxEqual(mCallback.raycastInfo.worldPoint.y, hitPoint.y, epsilon)); - test(approxEqual(mCallback.raycastInfo.worldPoint.z, hitPoint.z, epsilon)); + rp3d_test(mCallback.isHit); + rp3d_test(mCallback.raycastInfo.body == mConcaveMeshBody); + rp3d_test(mCallback.raycastInfo.proxyShape == mConcaveMeshProxyShape); + rp3d_test(approxEqual(mCallback.raycastInfo.hitFraction, decimal(0.2), epsilon)); + rp3d_test(approxEqual(mCallback.raycastInfo.worldPoint.x, hitPoint.x, epsilon)); + rp3d_test(approxEqual(mCallback.raycastInfo.worldPoint.y, hitPoint.y, epsilon)); + rp3d_test(approxEqual(mCallback.raycastInfo.worldPoint.z, hitPoint.z, epsilon)); // Correct category filter mask mCallback.reset(); mWorld->raycast(ray, &mCallback, CATEGORY2); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); // Wrong category filter mask mCallback.reset(); mWorld->raycast(ray, &mCallback, CATEGORY1); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); // CollisionBody::raycast() RaycastInfo raycastInfo2; - test(mConcaveMeshBody->raycast(ray, raycastInfo2)); - test(raycastInfo2.body == mConcaveMeshBody); - test(raycastInfo2.proxyShape == mConcaveMeshProxyShape); - test(approxEqual(raycastInfo2.hitFraction, decimal(0.2), epsilon)); - test(approxEqual(raycastInfo2.worldPoint.x, hitPoint.x, epsilon)); - test(approxEqual(raycastInfo2.worldPoint.y, hitPoint.y, epsilon)); - test(approxEqual(raycastInfo2.worldPoint.z, hitPoint.z, epsilon)); + rp3d_test(mConcaveMeshBody->raycast(ray, raycastInfo2)); + rp3d_test(raycastInfo2.body == mConcaveMeshBody); + rp3d_test(raycastInfo2.proxyShape == mConcaveMeshProxyShape); + rp3d_test(approxEqual(raycastInfo2.hitFraction, decimal(0.2), epsilon)); + rp3d_test(approxEqual(raycastInfo2.worldPoint.x, hitPoint.x, epsilon)); + rp3d_test(approxEqual(raycastInfo2.worldPoint.y, hitPoint.y, epsilon)); + rp3d_test(approxEqual(raycastInfo2.worldPoint.z, hitPoint.z, epsilon)); // ProxyCollisionShape::raycast() RaycastInfo raycastInfo3; - test(mConcaveMeshBody->raycast(ray, raycastInfo3)); - test(raycastInfo3.body == mConcaveMeshBody); - test(raycastInfo3.proxyShape == mConcaveMeshProxyShape); - test(approxEqual(raycastInfo3.hitFraction, decimal(0.2), epsilon)); - test(approxEqual(raycastInfo3.worldPoint.x, hitPoint.x, epsilon)); - test(approxEqual(raycastInfo3.worldPoint.y, hitPoint.y, epsilon)); - test(approxEqual(raycastInfo3.worldPoint.z, hitPoint.z, epsilon)); + rp3d_test(mConcaveMeshBody->raycast(ray, raycastInfo3)); + rp3d_test(raycastInfo3.body == mConcaveMeshBody); + rp3d_test(raycastInfo3.proxyShape == mConcaveMeshProxyShape); + rp3d_test(approxEqual(raycastInfo3.hitFraction, decimal(0.2), epsilon)); + rp3d_test(approxEqual(raycastInfo3.worldPoint.x, hitPoint.x, epsilon)); + rp3d_test(approxEqual(raycastInfo3.worldPoint.y, hitPoint.y, epsilon)); + rp3d_test(approxEqual(raycastInfo3.worldPoint.z, hitPoint.z, epsilon)); // ProxyCollisionShape::raycast() RaycastInfo raycastInfo4; - test(mConcaveMeshBody->raycast(ray, raycastInfo4)); - test(raycastInfo4.body == mConcaveMeshBody); - test(raycastInfo4.proxyShape == mConcaveMeshProxyShape); - test(approxEqual(raycastInfo4.hitFraction, decimal(0.2), epsilon)); - test(approxEqual(raycastInfo4.worldPoint.x, hitPoint.x, epsilon)); - test(approxEqual(raycastInfo4.worldPoint.y, hitPoint.y, epsilon)); - test(approxEqual(raycastInfo4.worldPoint.z, hitPoint.z, epsilon)); + rp3d_test(mConcaveMeshBody->raycast(ray, raycastInfo4)); + rp3d_test(raycastInfo4.body == mConcaveMeshBody); + rp3d_test(raycastInfo4.proxyShape == mConcaveMeshProxyShape); + rp3d_test(approxEqual(raycastInfo4.hitFraction, decimal(0.2), epsilon)); + rp3d_test(approxEqual(raycastInfo4.worldPoint.x, hitPoint.x, epsilon)); + rp3d_test(approxEqual(raycastInfo4.worldPoint.y, hitPoint.y, epsilon)); + rp3d_test(approxEqual(raycastInfo4.worldPoint.z, hitPoint.z, epsilon)); // ProxyCollisionShape::raycast() RaycastInfo raycastInfo5; - test(mConcaveMeshBody->raycast(ray, raycastInfo5)); - test(raycastInfo5.body == mConcaveMeshBody); - test(raycastInfo5.proxyShape == mConcaveMeshProxyShape); - test(approxEqual(raycastInfo5.hitFraction, decimal(0.2), epsilon)); - test(approxEqual(raycastInfo5.worldPoint.x, hitPoint.x, epsilon)); - test(approxEqual(raycastInfo5.worldPoint.y, hitPoint.y, epsilon)); - test(approxEqual(raycastInfo5.worldPoint.z, hitPoint.z, epsilon)); + rp3d_test(mConcaveMeshBody->raycast(ray, raycastInfo5)); + rp3d_test(raycastInfo5.body == mConcaveMeshBody); + rp3d_test(raycastInfo5.proxyShape == mConcaveMeshProxyShape); + rp3d_test(approxEqual(raycastInfo5.hitFraction, decimal(0.2), epsilon)); + rp3d_test(approxEqual(raycastInfo5.worldPoint.x, hitPoint.x, epsilon)); + rp3d_test(approxEqual(raycastInfo5.worldPoint.y, hitPoint.y, epsilon)); + rp3d_test(approxEqual(raycastInfo5.worldPoint.z, hitPoint.z, epsilon)); Ray ray1(mLocalShapeToWorld * Vector3(0, 0, 0), mLocalShapeToWorld * Vector3(5, 7, -1)); Ray ray2(mLocalShapeToWorld * Vector3(5, 11, 7), mLocalShapeToWorld * Vector3(17, 29, 28)); @@ -1735,145 +1735,145 @@ class TestRaycast : public Test { Ray ray16(mLocalShapeToWorld * Vector3(-1, 2, -7), mLocalShapeToWorld * Vector3(-1, 2, 30)); // ----- Test raycast miss ----- // - test(!mConcaveMeshBody->raycast(ray1, raycastInfo3)); - //test(!mConvexMeshProxyShape->raycast(ray1, raycastInfo3)); + rp3d_test(!mConcaveMeshBody->raycast(ray1, raycastInfo3)); + //rp3d_test(!mConvexMeshProxyShape->raycast(ray1, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray1, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray1.point1, ray1.point2, decimal(0.01)), &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray1.point1, ray1.point2, decimal(100.0)), &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); - test(!mConcaveMeshBody->raycast(ray2, raycastInfo3)); - test(!mConcaveMeshProxyShape->raycast(ray2, raycastInfo3)); + rp3d_test(!mConcaveMeshBody->raycast(ray2, raycastInfo3)); + rp3d_test(!mConcaveMeshProxyShape->raycast(ray2, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray2, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); - test(!mConcaveMeshBody->raycast(ray3, raycastInfo3)); - test(!mConcaveMeshProxyShape->raycast(ray3, raycastInfo3)); + rp3d_test(!mConcaveMeshBody->raycast(ray3, raycastInfo3)); + rp3d_test(!mConcaveMeshProxyShape->raycast(ray3, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray3, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); - test(!mConcaveMeshBody->raycast(ray4, raycastInfo3)); - test(!mConcaveMeshProxyShape->raycast(ray4, raycastInfo3)); + rp3d_test(!mConcaveMeshBody->raycast(ray4, raycastInfo3)); + rp3d_test(!mConcaveMeshProxyShape->raycast(ray4, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray4, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); - test(!mConcaveMeshBody->raycast(ray5, raycastInfo3)); - test(!mConcaveMeshProxyShape->raycast(ray5, raycastInfo3)); + rp3d_test(!mConcaveMeshBody->raycast(ray5, raycastInfo3)); + rp3d_test(!mConcaveMeshProxyShape->raycast(ray5, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray5, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); - test(!mConcaveMeshBody->raycast(ray6, raycastInfo3)); - test(!mConcaveMeshProxyShape->raycast(ray6, raycastInfo3)); + rp3d_test(!mConcaveMeshBody->raycast(ray6, raycastInfo3)); + rp3d_test(!mConcaveMeshProxyShape->raycast(ray6, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray6, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); - test(!mConcaveMeshBody->raycast(ray7, raycastInfo3)); - test(!mConcaveMeshProxyShape->raycast(ray7, raycastInfo3)); + rp3d_test(!mConcaveMeshBody->raycast(ray7, raycastInfo3)); + rp3d_test(!mConcaveMeshProxyShape->raycast(ray7, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray7, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); - test(!mConcaveMeshBody->raycast(ray8, raycastInfo3)); - test(!mConcaveMeshProxyShape->raycast(ray8, raycastInfo3)); + rp3d_test(!mConcaveMeshBody->raycast(ray8, raycastInfo3)); + rp3d_test(!mConcaveMeshProxyShape->raycast(ray8, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray8, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); - test(!mConcaveMeshBody->raycast(ray9, raycastInfo3)); - test(!mConcaveMeshProxyShape->raycast(ray9, raycastInfo3)); + rp3d_test(!mConcaveMeshBody->raycast(ray9, raycastInfo3)); + rp3d_test(!mConcaveMeshProxyShape->raycast(ray9, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray9, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); - test(!mConcaveMeshBody->raycast(ray10, raycastInfo3)); - test(!mConcaveMeshProxyShape->raycast(ray10, raycastInfo3)); + rp3d_test(!mConcaveMeshBody->raycast(ray10, raycastInfo3)); + rp3d_test(!mConcaveMeshProxyShape->raycast(ray10, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray10, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray11.point1, ray11.point2, decimal(0.01)), &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray12.point1, ray12.point2, decimal(0.01)), &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray13.point1, ray13.point2, decimal(0.01)), &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray14.point1, ray14.point2, decimal(0.01)), &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray15.point1, ray15.point2, decimal(0.01)), &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray16.point1, ray16.point2, decimal(0.01)), &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); // ----- Test raycast hits ----- // - test(mConcaveMeshBody->raycast(ray11, raycastInfo3)); - test(mConcaveMeshProxyShape->raycast(ray11, raycastInfo3)); + rp3d_test(mConcaveMeshBody->raycast(ray11, raycastInfo3)); + rp3d_test(mConcaveMeshProxyShape->raycast(ray11, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray11, &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray11.point1, ray11.point2, decimal(0.8)), &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); - test(mConcaveMeshBody->raycast(ray12, raycastInfo3)); - test(mConcaveMeshProxyShape->raycast(ray12, raycastInfo3)); + rp3d_test(mConcaveMeshBody->raycast(ray12, raycastInfo3)); + rp3d_test(mConcaveMeshProxyShape->raycast(ray12, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray12, &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray12.point1, ray12.point2, decimal(0.8)), &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); - test(mConcaveMeshBody->raycast(ray13, raycastInfo3)); - test(mConcaveMeshProxyShape->raycast(ray13, raycastInfo3)); + rp3d_test(mConcaveMeshBody->raycast(ray13, raycastInfo3)); + rp3d_test(mConcaveMeshProxyShape->raycast(ray13, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray13, &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray13.point1, ray13.point2, decimal(0.8)), &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); - test(mConcaveMeshBody->raycast(ray14, raycastInfo3)); - test(mConcaveMeshProxyShape->raycast(ray14, raycastInfo3)); + rp3d_test(mConcaveMeshBody->raycast(ray14, raycastInfo3)); + rp3d_test(mConcaveMeshProxyShape->raycast(ray14, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray14, &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray14.point1, ray14.point2, decimal(0.8)), &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); - test(mConcaveMeshBody->raycast(ray15, raycastInfo3)); - test(mConcaveMeshProxyShape->raycast(ray15, raycastInfo3)); + rp3d_test(mConcaveMeshBody->raycast(ray15, raycastInfo3)); + rp3d_test(mConcaveMeshProxyShape->raycast(ray15, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray15, &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray15.point1, ray15.point2, decimal(0.8)), &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); - test(mConcaveMeshBody->raycast(ray16, raycastInfo3)); - test(mConcaveMeshProxyShape->raycast(ray16, raycastInfo3)); + rp3d_test(mConcaveMeshBody->raycast(ray16, raycastInfo3)); + rp3d_test(mConcaveMeshProxyShape->raycast(ray16, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray16, &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray16.point1, ray16.point2, decimal(0.8)), &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); } void testHeightField() { @@ -1894,73 +1894,73 @@ class TestRaycast : public Test { // CollisionWorld::raycast() mCallback.reset(); mWorld->raycast(ray, &mCallback); - test(mCallback.isHit); - test(mCallback.raycastInfo.body == mHeightFieldBody); - test(mCallback.raycastInfo.proxyShape == mHeightFieldProxyShape); - test(approxEqual(mCallback.raycastInfo.hitFraction, decimal(0.4), epsilon)); - test(approxEqual(mCallback.raycastInfo.worldPoint.x, hitPoint.x, epsilon)); - test(approxEqual(mCallback.raycastInfo.worldPoint.y, hitPoint.y, epsilon)); - test(approxEqual(mCallback.raycastInfo.worldPoint.z, hitPoint.z, epsilon)); + rp3d_test(mCallback.isHit); + rp3d_test(mCallback.raycastInfo.body == mHeightFieldBody); + rp3d_test(mCallback.raycastInfo.proxyShape == mHeightFieldProxyShape); + rp3d_test(approxEqual(mCallback.raycastInfo.hitFraction, decimal(0.4), epsilon)); + rp3d_test(approxEqual(mCallback.raycastInfo.worldPoint.x, hitPoint.x, epsilon)); + rp3d_test(approxEqual(mCallback.raycastInfo.worldPoint.y, hitPoint.y, epsilon)); + rp3d_test(approxEqual(mCallback.raycastInfo.worldPoint.z, hitPoint.z, epsilon)); // Correct category filter mask mCallback.reset(); mWorld->raycast(ray, &mCallback, CATEGORY2); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); // Wrong category filter mask mCallback.reset(); mWorld->raycast(ray, &mCallback, CATEGORY1); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); // CollisionBody::raycast() RaycastInfo raycastInfo2; - test(mHeightFieldBody->raycast(ray, raycastInfo2)); - test(raycastInfo2.body == mHeightFieldBody); - test(raycastInfo2.proxyShape == mHeightFieldProxyShape); - test(approxEqual(raycastInfo2.hitFraction, decimal(0.4), epsilon)); - test(approxEqual(raycastInfo2.worldPoint.x, hitPoint.x, epsilon)); - test(approxEqual(raycastInfo2.worldPoint.y, hitPoint.y, epsilon)); - test(approxEqual(raycastInfo2.worldPoint.z, hitPoint.z, epsilon)); + rp3d_test(mHeightFieldBody->raycast(ray, raycastInfo2)); + rp3d_test(raycastInfo2.body == mHeightFieldBody); + rp3d_test(raycastInfo2.proxyShape == mHeightFieldProxyShape); + rp3d_test(approxEqual(raycastInfo2.hitFraction, decimal(0.4), epsilon)); + rp3d_test(approxEqual(raycastInfo2.worldPoint.x, hitPoint.x, epsilon)); + rp3d_test(approxEqual(raycastInfo2.worldPoint.y, hitPoint.y, epsilon)); + rp3d_test(approxEqual(raycastInfo2.worldPoint.z, hitPoint.z, epsilon)); // ProxyCollisionShape::raycast() RaycastInfo raycastInfo3; - test(mHeightFieldProxyShape->raycast(ray, raycastInfo3)); - test(raycastInfo3.body == mHeightFieldBody); - test(raycastInfo3.proxyShape == mHeightFieldProxyShape); - test(approxEqual(raycastInfo3.hitFraction, decimal(0.4), epsilon)); - test(approxEqual(raycastInfo3.worldPoint.x, hitPoint.x, epsilon)); - test(approxEqual(raycastInfo3.worldPoint.y, hitPoint.y, epsilon)); - test(approxEqual(raycastInfo3.worldPoint.z, hitPoint.z, epsilon)); + rp3d_test(mHeightFieldProxyShape->raycast(ray, raycastInfo3)); + rp3d_test(raycastInfo3.body == mHeightFieldBody); + rp3d_test(raycastInfo3.proxyShape == mHeightFieldProxyShape); + rp3d_test(approxEqual(raycastInfo3.hitFraction, decimal(0.4), epsilon)); + rp3d_test(approxEqual(raycastInfo3.worldPoint.x, hitPoint.x, epsilon)); + rp3d_test(approxEqual(raycastInfo3.worldPoint.y, hitPoint.y, epsilon)); + rp3d_test(approxEqual(raycastInfo3.worldPoint.z, hitPoint.z, epsilon)); mCallback.reset(); mWorld->raycast(rayBottom, &mCallback); - test(mCallback.isHit); - test(mCallback.raycastInfo.body == mHeightFieldBody); - test(mCallback.raycastInfo.proxyShape == mHeightFieldProxyShape); - test(approxEqual(mCallback.raycastInfo.hitFraction, decimal(0.375), epsilon)); - test(approxEqual(mCallback.raycastInfo.worldPoint.x, hitPoint2.x, epsilon)); - test(approxEqual(mCallback.raycastInfo.worldPoint.y, hitPoint2.y, epsilon)); - test(approxEqual(mCallback.raycastInfo.worldPoint.z, hitPoint2.z, epsilon)); + rp3d_test(mCallback.isHit); + rp3d_test(mCallback.raycastInfo.body == mHeightFieldBody); + rp3d_test(mCallback.raycastInfo.proxyShape == mHeightFieldProxyShape); + rp3d_test(approxEqual(mCallback.raycastInfo.hitFraction, decimal(0.375), epsilon)); + rp3d_test(approxEqual(mCallback.raycastInfo.worldPoint.x, hitPoint2.x, epsilon)); + rp3d_test(approxEqual(mCallback.raycastInfo.worldPoint.y, hitPoint2.y, epsilon)); + rp3d_test(approxEqual(mCallback.raycastInfo.worldPoint.z, hitPoint2.z, epsilon)); // CollisionBody::raycast() RaycastInfo raycastInfo5; - test(mHeightFieldBody->raycast(rayBottom, raycastInfo5)); - test(raycastInfo5.body == mHeightFieldBody); - test(raycastInfo5.proxyShape == mHeightFieldProxyShape); - test(approxEqual(raycastInfo5.hitFraction, decimal(0.375), epsilon)); - test(approxEqual(raycastInfo5.worldPoint.x, hitPoint2.x, epsilon)); - test(approxEqual(raycastInfo5.worldPoint.y, hitPoint2.y, epsilon)); - test(approxEqual(raycastInfo5.worldPoint.z, hitPoint2.z, epsilon)); + rp3d_test(mHeightFieldBody->raycast(rayBottom, raycastInfo5)); + rp3d_test(raycastInfo5.body == mHeightFieldBody); + rp3d_test(raycastInfo5.proxyShape == mHeightFieldProxyShape); + rp3d_test(approxEqual(raycastInfo5.hitFraction, decimal(0.375), epsilon)); + rp3d_test(approxEqual(raycastInfo5.worldPoint.x, hitPoint2.x, epsilon)); + rp3d_test(approxEqual(raycastInfo5.worldPoint.y, hitPoint2.y, epsilon)); + rp3d_test(approxEqual(raycastInfo5.worldPoint.z, hitPoint2.z, epsilon)); // ProxyCollisionShape::raycast() RaycastInfo raycastInfo6; - test(mHeightFieldProxyShape->raycast(rayBottom, raycastInfo6)); - test(raycastInfo6.body == mHeightFieldBody); - test(raycastInfo6.proxyShape == mHeightFieldProxyShape); - test(approxEqual(raycastInfo6.hitFraction, decimal(0.375), epsilon)); - test(approxEqual(raycastInfo6.worldPoint.x, hitPoint2.x, epsilon)); - test(approxEqual(raycastInfo6.worldPoint.y, hitPoint2.y, epsilon)); - test(approxEqual(raycastInfo6.worldPoint.z, hitPoint2.z, epsilon)); + rp3d_test(mHeightFieldProxyShape->raycast(rayBottom, raycastInfo6)); + rp3d_test(raycastInfo6.body == mHeightFieldBody); + rp3d_test(raycastInfo6.proxyShape == mHeightFieldProxyShape); + rp3d_test(approxEqual(raycastInfo6.hitFraction, decimal(0.375), epsilon)); + rp3d_test(approxEqual(raycastInfo6.worldPoint.x, hitPoint2.x, epsilon)); + rp3d_test(approxEqual(raycastInfo6.worldPoint.y, hitPoint2.y, epsilon)); + rp3d_test(approxEqual(raycastInfo6.worldPoint.z, hitPoint2.z, epsilon)); Ray ray1(mLocalShapeToWorld * Vector3(0, 5, 0), mLocalShapeToWorld * Vector3(5, 7, 5)); Ray ray2(mLocalShapeToWorld * Vector3(-4, -4, 7), mLocalShapeToWorld * Vector3(-4, 15, 7)); @@ -1974,80 +1974,80 @@ class TestRaycast : public Test { Ray ray14(mLocalShapeToWorld * Vector3(3, 8, 3), mLocalShapeToWorld * Vector3(3, 0, 3)); // ----- Test raycast miss ----- // - test(!mHeightFieldBody->raycast(ray1, raycastInfo3)); - test(!mHeightFieldProxyShape->raycast(ray1, raycastInfo3)); + rp3d_test(!mHeightFieldBody->raycast(ray1, raycastInfo3)); + rp3d_test(!mHeightFieldProxyShape->raycast(ray1, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray1, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray1.point1, ray1.point2, decimal(0.01)), &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray1.point1, ray1.point2, decimal(100.0)), &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); - test(!mHeightFieldBody->raycast(ray2, raycastInfo3)); - test(!mHeightFieldProxyShape->raycast(ray2, raycastInfo3)); + rp3d_test(!mHeightFieldBody->raycast(ray2, raycastInfo3)); + rp3d_test(!mHeightFieldProxyShape->raycast(ray2, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray2, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); - test(!mHeightFieldBody->raycast(ray3, raycastInfo3)); - test(!mHeightFieldProxyShape->raycast(ray3, raycastInfo3)); + rp3d_test(!mHeightFieldBody->raycast(ray3, raycastInfo3)); + rp3d_test(!mHeightFieldProxyShape->raycast(ray3, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray3, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); - test(!mHeightFieldBody->raycast(ray4, raycastInfo3)); - test(!mHeightFieldProxyShape->raycast(ray4, raycastInfo3)); + rp3d_test(!mHeightFieldBody->raycast(ray4, raycastInfo3)); + rp3d_test(!mHeightFieldProxyShape->raycast(ray4, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray4, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); - test(!mHeightFieldBody->raycast(ray5, raycastInfo3)); - test(!mHeightFieldProxyShape->raycast(ray5, raycastInfo3)); + rp3d_test(!mHeightFieldBody->raycast(ray5, raycastInfo3)); + rp3d_test(!mHeightFieldProxyShape->raycast(ray5, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray5, &mCallback); - test(!mCallback.isHit); + rp3d_test(!mCallback.isHit); mCallback.reset(); // ----- Test raycast hits ----- // - test(mHeightFieldBody->raycast(ray11, raycastInfo3)); - test(mHeightFieldProxyShape->raycast(ray11, raycastInfo3)); + rp3d_test(mHeightFieldBody->raycast(ray11, raycastInfo3)); + rp3d_test(mHeightFieldProxyShape->raycast(ray11, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray11, &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray11.point1, ray11.point2, decimal(0.95)), &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); - test(mHeightFieldBody->raycast(ray12, raycastInfo3)); - test(mHeightFieldProxyShape->raycast(ray12, raycastInfo3)); + rp3d_test(mHeightFieldBody->raycast(ray12, raycastInfo3)); + rp3d_test(mHeightFieldProxyShape->raycast(ray12, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray12, &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray12.point1, ray12.point2, decimal(0.87)), &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); - test(mHeightFieldBody->raycast(ray13, raycastInfo3)); - test(mHeightFieldProxyShape->raycast(ray13, raycastInfo3)); + rp3d_test(mHeightFieldBody->raycast(ray13, raycastInfo3)); + rp3d_test(mHeightFieldProxyShape->raycast(ray13, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray13, &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray13.point1, ray13.point2, decimal(0.8)), &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); - test(mHeightFieldBody->raycast(ray14, raycastInfo3)); - test(mHeightFieldProxyShape->raycast(ray14, raycastInfo3)); + rp3d_test(mHeightFieldBody->raycast(ray14, raycastInfo3)); + rp3d_test(mHeightFieldProxyShape->raycast(ray14, raycastInfo3)); mCallback.reset(); mWorld->raycast(ray14, &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); mCallback.reset(); mWorld->raycast(Ray(ray14.point1, ray14.point2, decimal(0.8)), &mCallback); - test(mCallback.isHit); + rp3d_test(mCallback.isHit); } }; diff --git a/test/tests/collision/TestTriangleVertexArray.h b/test/tests/collision/TestTriangleVertexArray.h index c4b8904b..30dd3fd5 100644 --- a/test/tests/collision/TestTriangleVertexArray.h +++ b/test/tests/collision/TestTriangleVertexArray.h @@ -139,47 +139,47 @@ class TestTriangleVertexArray : public Test { // ----- First triangle vertex array ----- // - test(mTriangleVertexArray1->getVertexDataType() == TriangleVertexArray::VertexDataType::VERTEX_FLOAT_TYPE); - test(mTriangleVertexArray1->getIndexDataType() == TriangleVertexArray::IndexDataType::INDEX_INTEGER_TYPE); - test(mTriangleVertexArray1->getVertexNormalDataType() == TriangleVertexArray::NormalDataType::NORMAL_FLOAT_TYPE); - test(mTriangleVertexArray1->getNbTriangles() == 2); - test(mTriangleVertexArray1->getNbVertices() == 4); - test(mTriangleVertexArray1->getIndicesStart() == static_cast(mIndices1)); - test(mTriangleVertexArray1->getVerticesStart() == static_cast(mVertices1)); - test(mTriangleVertexArray1->getIndicesStride() == (3 * sizeof(uint))); - test(mTriangleVertexArray1->getVerticesStride() == (3 * sizeof(float))); + rp3d_test(mTriangleVertexArray1->getVertexDataType() == TriangleVertexArray::VertexDataType::VERTEX_FLOAT_TYPE); + rp3d_test(mTriangleVertexArray1->getIndexDataType() == TriangleVertexArray::IndexDataType::INDEX_INTEGER_TYPE); + rp3d_test(mTriangleVertexArray1->getVertexNormalDataType() == TriangleVertexArray::NormalDataType::NORMAL_FLOAT_TYPE); + rp3d_test(mTriangleVertexArray1->getNbTriangles() == 2); + rp3d_test(mTriangleVertexArray1->getNbVertices() == 4); + rp3d_test(mTriangleVertexArray1->getIndicesStart() == static_cast(mIndices1)); + rp3d_test(mTriangleVertexArray1->getVerticesStart() == static_cast(mVertices1)); + rp3d_test(mTriangleVertexArray1->getIndicesStride() == (3 * sizeof(uint))); + rp3d_test(mTriangleVertexArray1->getVerticesStride() == (3 * sizeof(float))); // Get triangle indices uint triangle0Indices[3]; mTriangleVertexArray1->getTriangleVerticesIndices(0, triangle0Indices); - test(triangle0Indices[0] == mIndices1[0]); - test(triangle0Indices[1] == mIndices1[1]); - test(triangle0Indices[2] == mIndices1[2]); + rp3d_test(triangle0Indices[0] == mIndices1[0]); + rp3d_test(triangle0Indices[1] == mIndices1[1]); + rp3d_test(triangle0Indices[2] == mIndices1[2]); uint triangle1Indices[3]; mTriangleVertexArray1->getTriangleVerticesIndices(1, triangle1Indices); - test(triangle1Indices[0] == mIndices1[3]); - test(triangle1Indices[1] == mIndices1[4]); - test(triangle1Indices[2] == mIndices1[5]); + rp3d_test(triangle1Indices[0] == mIndices1[3]); + rp3d_test(triangle1Indices[1] == mIndices1[4]); + rp3d_test(triangle1Indices[2] == mIndices1[5]); // Get triangle vertices Vector3 triangle0Vertices[3]; mTriangleVertexArray1->getTriangleVertices(0, triangle0Vertices); - test(approxEqual(triangle0Vertices[0], mVertex0, decimal(0.0000001))); - test(approxEqual(triangle0Vertices[1], mVertex1, decimal(0.0000001))); - test(approxEqual(triangle0Vertices[2], mVertex2, decimal(0.0000001))); + rp3d_test(approxEqual(triangle0Vertices[0], mVertex0, decimal(0.0000001))); + rp3d_test(approxEqual(triangle0Vertices[1], mVertex1, decimal(0.0000001))); + rp3d_test(approxEqual(triangle0Vertices[2], mVertex2, decimal(0.0000001))); Vector3 triangle1Vertices[3]; mTriangleVertexArray1->getTriangleVertices(1, triangle1Vertices); - test(approxEqual(triangle1Vertices[0], mVertex0, decimal(0.0000001))); - test(approxEqual(triangle1Vertices[1], mVertex3, decimal(0.0000001))); - test(approxEqual(triangle1Vertices[2], mVertex1, decimal(0.0000001))); + rp3d_test(approxEqual(triangle1Vertices[0], mVertex0, decimal(0.0000001))); + rp3d_test(approxEqual(triangle1Vertices[1], mVertex3, decimal(0.0000001))); + rp3d_test(approxEqual(triangle1Vertices[2], mVertex1, decimal(0.0000001))); // Get triangle normals @@ -193,64 +193,64 @@ class TestTriangleVertexArray : public Test { const Vector3 normal2Test(0, 1, 0); const Vector3 normal3Test(1, 0, 0); - test(approxEqual(triangle0Normals[0], normal0Test, decimal(0.0001))); - test(approxEqual(triangle0Normals[2], normal2Test, decimal(0.0001))); - test(approxEqual(triangle1Normals[1], normal3Test, decimal(0.0001))); + rp3d_test(approxEqual(triangle0Normals[0], normal0Test, decimal(0.0001))); + rp3d_test(approxEqual(triangle0Normals[2], normal2Test, decimal(0.0001))); + rp3d_test(approxEqual(triangle1Normals[1], normal3Test, decimal(0.0001))); // ----- Second triangle vertex array ----- // - test(mTriangleVertexArray2->getVertexDataType() == TriangleVertexArray::VertexDataType::VERTEX_DOUBLE_TYPE); - test(mTriangleVertexArray2->getIndexDataType() == TriangleVertexArray::IndexDataType::INDEX_SHORT_TYPE); - test(mTriangleVertexArray2->getVertexNormalDataType() == TriangleVertexArray::NormalDataType::NORMAL_FLOAT_TYPE); - test(mTriangleVertexArray2->getNbTriangles() == 2); - test(mTriangleVertexArray2->getNbVertices() == 4); - test(mTriangleVertexArray2->getIndicesStart() == static_cast(mIndices2)); - test(mTriangleVertexArray2->getVerticesStart() == static_cast(mVertices2)); - test(mTriangleVertexArray2->getVerticesNormalsStart() == static_cast(mNormals2)); - test(mTriangleVertexArray2->getIndicesStride() == (3 * sizeof(short))); - test(mTriangleVertexArray2->getVerticesStride() == (3 * sizeof(double))); - test(mTriangleVertexArray2->getVerticesNormalsStride() == (3 * sizeof(float))); + rp3d_test(mTriangleVertexArray2->getVertexDataType() == TriangleVertexArray::VertexDataType::VERTEX_DOUBLE_TYPE); + rp3d_test(mTriangleVertexArray2->getIndexDataType() == TriangleVertexArray::IndexDataType::INDEX_SHORT_TYPE); + rp3d_test(mTriangleVertexArray2->getVertexNormalDataType() == TriangleVertexArray::NormalDataType::NORMAL_FLOAT_TYPE); + rp3d_test(mTriangleVertexArray2->getNbTriangles() == 2); + rp3d_test(mTriangleVertexArray2->getNbVertices() == 4); + rp3d_test(mTriangleVertexArray2->getIndicesStart() == static_cast(mIndices2)); + rp3d_test(mTriangleVertexArray2->getVerticesStart() == static_cast(mVertices2)); + rp3d_test(mTriangleVertexArray2->getVerticesNormalsStart() == static_cast(mNormals2)); + rp3d_test(mTriangleVertexArray2->getIndicesStride() == (3 * sizeof(short))); + rp3d_test(mTriangleVertexArray2->getVerticesStride() == (3 * sizeof(double))); + rp3d_test(mTriangleVertexArray2->getVerticesNormalsStride() == (3 * sizeof(float))); // Get triangle indices mTriangleVertexArray2->getTriangleVerticesIndices(0, triangle0Indices); - test(triangle0Indices[0] == static_cast(mIndices2[0])); - test(triangle0Indices[1] == static_cast(mIndices2[1])); - test(triangle0Indices[2] == static_cast(mIndices2[2])); + rp3d_test(triangle0Indices[0] == static_cast(mIndices2[0])); + rp3d_test(triangle0Indices[1] == static_cast(mIndices2[1])); + rp3d_test(triangle0Indices[2] == static_cast(mIndices2[2])); mTriangleVertexArray2->getTriangleVerticesIndices(1, triangle1Indices); - test(triangle1Indices[0] == static_cast(mIndices2[3])); - test(triangle1Indices[1] == static_cast(mIndices2[4])); - test(triangle1Indices[2] == static_cast(mIndices2[5])); + rp3d_test(triangle1Indices[0] == static_cast(mIndices2[3])); + rp3d_test(triangle1Indices[1] == static_cast(mIndices2[4])); + rp3d_test(triangle1Indices[2] == static_cast(mIndices2[5])); // Get triangle vertices mTriangleVertexArray2->getTriangleVertices(0, triangle0Vertices); - test(approxEqual(triangle0Vertices[0], mVertex4, decimal(0.0000001))); - test(approxEqual(triangle0Vertices[1], mVertex5, decimal(0.0000001))); - test(approxEqual(triangle0Vertices[2], mVertex6, decimal(0.0000001))); + rp3d_test(approxEqual(triangle0Vertices[0], mVertex4, decimal(0.0000001))); + rp3d_test(approxEqual(triangle0Vertices[1], mVertex5, decimal(0.0000001))); + rp3d_test(approxEqual(triangle0Vertices[2], mVertex6, decimal(0.0000001))); mTriangleVertexArray2->getTriangleVertices(1, triangle1Vertices); - test(approxEqual(triangle1Vertices[0], mVertex4, decimal(0.0000001))); - test(approxEqual(triangle1Vertices[1], mVertex7, decimal(0.0000001))); - test(approxEqual(triangle1Vertices[2], mVertex5, decimal(0.0000001))); + rp3d_test(approxEqual(triangle1Vertices[0], mVertex4, decimal(0.0000001))); + rp3d_test(approxEqual(triangle1Vertices[1], mVertex7, decimal(0.0000001))); + rp3d_test(approxEqual(triangle1Vertices[2], mVertex5, decimal(0.0000001))); // Get triangle normals mTriangleVertexArray2->getTriangleVerticesNormals(0, triangle0Normals); mTriangleVertexArray2->getTriangleVerticesNormals(1, triangle1Normals); - test(approxEqual(triangle0Normals[0], mNormal0, decimal(0.000001))); - test(approxEqual(triangle0Normals[1], mNormal1, decimal(0.000001))); - test(approxEqual(triangle0Normals[2], mNormal2, decimal(0.000001))); + rp3d_test(approxEqual(triangle0Normals[0], mNormal0, decimal(0.000001))); + rp3d_test(approxEqual(triangle0Normals[1], mNormal1, decimal(0.000001))); + rp3d_test(approxEqual(triangle0Normals[2], mNormal2, decimal(0.000001))); - test(approxEqual(triangle1Normals[0], mNormal0, decimal(0.000001))); - test(approxEqual(triangle1Normals[1], mNormal3, decimal(0.000001))); - test(approxEqual(triangle1Normals[2], mNormal1, decimal(0.000001))); + rp3d_test(approxEqual(triangle1Normals[0], mNormal0, decimal(0.000001))); + rp3d_test(approxEqual(triangle1Normals[1], mNormal3, decimal(0.000001))); + rp3d_test(approxEqual(triangle1Normals[2], mNormal1, decimal(0.000001))); } }; diff --git a/test/tests/containers/TestList.h b/test/tests/containers/TestList.h index 07cc5b4d..bd323d07 100644 --- a/test/tests/containers/TestList.h +++ b/test/tests/containers/TestList.h @@ -73,42 +73,42 @@ class TestList : public Test { // ----- Constructors ----- // List list1(mAllocator); - test(list1.capacity() == 0); - test(list1.size() == 0); + rp3d_test(list1.capacity() == 0); + rp3d_test(list1.size() == 0); List list2(mAllocator, 100); - test(list2.capacity() == 100); - test(list2.size() == 0); + rp3d_test(list2.capacity() == 100); + rp3d_test(list2.size() == 0); List list3(mAllocator); list3.add(1); list3.add(2); list3.add(3); - test(list3.capacity() == 4); - test(list3.size() == 3); + rp3d_test(list3.capacity() == 4); + rp3d_test(list3.size() == 3); // ----- Copy Constructors ----- // List list4(list1); - test(list4.capacity() == 0); - test(list4.size() == 0); + rp3d_test(list4.capacity() == 0); + rp3d_test(list4.size() == 0); List list5(list3); - test(list5.capacity() == list3.size()); - test(list5.size() == list3.size()); + rp3d_test(list5.capacity() == list3.size()); + rp3d_test(list5.size() == list3.size()); for (uint i=0; i list6(mAllocator, 20); - test(list6.capacity() == 20); + rp3d_test(list6.capacity() == 20); for (uint i=0; i<20; i++) { list6.add("test"); } - test(list6.capacity() == 20); + rp3d_test(list6.capacity() == 20); list6.add("test"); - test(list6.capacity() == 40); + rp3d_test(list6.capacity() == 40); } void testAddRemoveClear() { @@ -117,12 +117,12 @@ class TestList : public Test { List list1(mAllocator); list1.add(4); - test(list1.size() == 1); - test(list1[0] == 4); + rp3d_test(list1.size() == 1); + rp3d_test(list1[0] == 4); list1.add(9); - test(list1.size() == 2); - test(list1[0] == 4); - test(list1[1] == 9); + rp3d_test(list1.size() == 2); + rp3d_test(list1[0] == 4); + rp3d_test(list1[1] == 9); const int arraySize = 15; int arrayTest[arraySize] = {3, 145, -182, 34, 12, 95, -1834, 4143, -111, -111, 4343, 234, 22983, -3432, 753}; @@ -130,9 +130,9 @@ class TestList : public Test { for (uint i=0; i list6(mAllocator); list6.addRange(list5); - test(list6.size() == list5.size()); - test(list6[0] == 4); - test(list6[1] == 5); + rp3d_test(list6.size() == list5.size()); + rp3d_test(list6[0] == 4); + rp3d_test(list6[1] == 5); list4.addRange(list5); - test(list4.size() == 3 + list5.size()); - test(list4[0] == 1); - test(list4[1] == 2); - test(list4[2] == 3); - test(list4[3] == 4); - test(list4[4] == 5); + rp3d_test(list4.size() == 3 + list5.size()); + rp3d_test(list4[0] == 1); + rp3d_test(list4[1] == 2); + rp3d_test(list4[2] == 3); + rp3d_test(list4[3] == 4); + rp3d_test(list4[4] == 5); // ----- Test clear() ----- // @@ -222,10 +222,10 @@ class TestList : public Test { list7.add("test2"); list7.add("test3"); list7.clear(); - test(list7.size() == 0); + rp3d_test(list7.size() == 0); list7.add("new"); - test(list7.size() == 1); - test(list7[0] == "new"); + rp3d_test(list7.size() == 1); + rp3d_test(list7[0] == "new"); } void testAssignment() { @@ -250,20 +250,20 @@ class TestList : public Test { list5.add(3); list3 = list2; - test(list2.size() == list3.size()); - test(list2[0] == list3[0]); - test(list2[1] == list3[1]); + rp3d_test(list2.size() == list3.size()); + rp3d_test(list2[0] == list3[0]); + rp3d_test(list2[1] == list3[1]); list4 = list1; - test(list4.size() == list1.size()) - test(list4[0] == list1[0]); - test(list4[1] == list1[1]); - test(list4[2] == list1[2]); + rp3d_test(list4.size() == list1.size()) + rp3d_test(list4[0] == list1[0]); + rp3d_test(list4[1] == list1[1]); + rp3d_test(list4[2] == list1[2]); list5 = list2; - test(list5.size() == list2.size()); - test(list5[0] == list2[0]); - test(list5[1] == list2[1]); + rp3d_test(list5.size() == list2.size()); + rp3d_test(list5[0] == list2[0]); + rp3d_test(list5[1] == list2[1]); } void testIndexing() { @@ -273,27 +273,27 @@ class TestList : public Test { list1.add(2); list1.add(3); - test(list1[0] == 1); - test(list1[1] == 2); - test(list1[2] == 3); + rp3d_test(list1[0] == 1); + rp3d_test(list1[1] == 2); + rp3d_test(list1[2] == 3); list1[0] = 6; list1[1] = 7; list1[2] = 8; - test(list1[0] == 6); - test(list1[1] == 7); - test(list1[2] == 8); + rp3d_test(list1[0] == 6); + rp3d_test(list1[1] == 7); + rp3d_test(list1[2] == 8); const int a = list1[0]; const int b = list1[1]; - test(a == 6); - test(b == 7); + rp3d_test(a == 6); + rp3d_test(b == 7); list1[0]++; list1[1]++; - test(list1[0] == 7); - test(list1[1] == 8); + rp3d_test(list1[0] == 7); + rp3d_test(list1[1] == 8); } void testFind() { @@ -305,9 +305,9 @@ class TestList : public Test { list1.add(4); list1.add(5); - test(list1.find(1) == list1.begin()); - test(*(list1.find(2)) == 2); - test(*(list1.find(5)) == 5); + rp3d_test(list1.find(1) == list1.begin()); + rp3d_test(*(list1.find(2)) == 2); + rp3d_test(*(list1.find(5)) == 5); } void testEquality() { @@ -331,40 +331,40 @@ class TestList : public Test { list4.add(5); list4.add(3); - test(list1 == list1); - test(list1 != list2); - test(list1 == list3); - test(list1 != list4); - test(list2 != list4); + rp3d_test(list1 == list1); + rp3d_test(list1 != list2); + rp3d_test(list1 == list3); + rp3d_test(list1 != list4); + rp3d_test(list2 != list4); } void testReserve() { List list1(mAllocator); list1.reserve(10); - test(list1.size() == 0); - test(list1.capacity() == 10); + rp3d_test(list1.size() == 0); + rp3d_test(list1.capacity() == 10); list1.add(1); list1.add(2); - test(list1.capacity() == 10); - test(list1.size() == 2); - test(list1[0] == 1); - test(list1[1] == 2); + rp3d_test(list1.capacity() == 10); + rp3d_test(list1.size() == 2); + rp3d_test(list1[0] == 1); + rp3d_test(list1[1] == 2); list1.reserve(1); - test(list1.capacity() == 10); + rp3d_test(list1.capacity() == 10); list1.reserve(100); - test(list1.capacity() == 100); - test(list1[0] == 1); - test(list1[1] == 2); + rp3d_test(list1.capacity() == 100); + rp3d_test(list1[0] == 1); + rp3d_test(list1[1] == 2); } void testIterators() { List list1(mAllocator); - test(list1.begin() == list1.end()); + rp3d_test(list1.begin() == list1.end()); list1.add(5); list1.add(6); @@ -375,30 +375,30 @@ class TestList : public Test { List::Iterator itEnd = list1.end(); List::Iterator it = list1.begin(); - test(itBegin == it); - test(*it == 5); - test(*(it++) == 5); - test(*it == 6); - test(*(it--) == 6); - test(*it == 5); - test(*(++it) == 6); - test(*it == 6); - test(*(--it) == 5); - test(*it == 5); - test(it == itBegin); + rp3d_test(itBegin == it); + rp3d_test(*it == 5); + rp3d_test(*(it++) == 5); + rp3d_test(*it == 6); + rp3d_test(*(it--) == 6); + rp3d_test(*it == 5); + rp3d_test(*(++it) == 6); + rp3d_test(*it == 6); + rp3d_test(*(--it) == 5); + rp3d_test(*it == 5); + rp3d_test(it == itBegin); it = list1.end(); - test(it == itEnd); + rp3d_test(it == itEnd); it--; - test(*it == -1); + rp3d_test(*it == -1); it++; - test(it == itEnd); + rp3d_test(it == itEnd); List list2(mAllocator); for (auto it = list1.begin(); it != list1.end(); ++it) { list2.add(*it); } - test(list1 == list2); + rp3d_test(list1 == list2); } }; diff --git a/test/tests/containers/TestMap.h b/test/tests/containers/TestMap.h index d75de2aa..4505ab1a 100644 --- a/test/tests/containers/TestMap.h +++ b/test/tests/containers/TestMap.h @@ -98,49 +98,49 @@ class TestMap : public Test { // ----- Constructors ----- // Map map1(mAllocator); - test(map1.capacity() == 0); - test(map1.size() == 0); + rp3d_test(map1.capacity() == 0); + rp3d_test(map1.size() == 0); Map map2(mAllocator, 100); - test(map2.capacity() >= 100); - test(map2.size() == 0); + rp3d_test(map2.capacity() >= 100); + rp3d_test(map2.size() == 0); // ----- Copy Constructors ----- // Map map3(map1); - test(map3.capacity() == map1.capacity()); - test(map3.size() == map1.size()); + rp3d_test(map3.capacity() == map1.capacity()); + rp3d_test(map3.size() == map1.size()); Map map4(mAllocator); map4.add(Pair(1, 10)); map4.add(Pair(2, 20)); map4.add(Pair(3, 30)); - test(map4.capacity() >= 3); - test(map4.size() == 3); + rp3d_test(map4.capacity() >= 3); + rp3d_test(map4.size() == 3); Map map5(map4); - test(map5.capacity() == map4.capacity()); - test(map5.size() == map4.size()); - test(map5[1] == 10); - test(map5[2] == 20); - test(map5[3] == 30); + rp3d_test(map5.capacity() == map4.capacity()); + rp3d_test(map5.size() == map4.size()); + rp3d_test(map5[1] == 10); + rp3d_test(map5[2] == 20); + rp3d_test(map5[3] == 30); } void testReserve() { Map map1(mAllocator); map1.reserve(15); - test(map1.capacity() >= 15); + rp3d_test(map1.capacity() >= 15); map1.add(Pair(1, "test1")); map1.add(Pair(2, "test2")); - test(map1.capacity() >= 15); + rp3d_test(map1.capacity() >= 15); map1.reserve(10); - test(map1.capacity() >= 15); + rp3d_test(map1.capacity() >= 15); map1.reserve(100); - test(map1.capacity() >= 100); - test(map1[1] == "test1"); - test(map1[2] == "test2"); + rp3d_test(map1.capacity() >= 100); + rp3d_test(map1[1] == "test1"); + rp3d_test(map1[2] == "test2"); } void testAddRemoveClear() { @@ -151,10 +151,10 @@ class TestMap : public Test { map1.add(Pair(1, 10)); map1.add(Pair(8, 80)); map1.add(Pair(13, 130)); - test(map1[1] == 10); - test(map1[8] == 80); - test(map1[13] == 130); - test(map1.size() == 3); + rp3d_test(map1[1] == 10); + rp3d_test(map1[8] == 80); + rp3d_test(map1[13] == 130); + rp3d_test(map1.size() == 3); Map map2(mAllocator, 15); for (int i = 0; i < 1000000; i++) { @@ -164,41 +164,41 @@ class TestMap : public Test { for (int i = 0; i < 1000000; i++) { if (map2[i] != i * 100) isValid = false; } - test(isValid); + rp3d_test(isValid); map1.remove(1); map1.add(Pair(1, 10)); - test(map1.size() == 3); - test(map1[1] == 10); + rp3d_test(map1.size() == 3); + rp3d_test(map1[1] == 10); map1.add(Pair(56, 34)); - test(map1[56] == 34); - test(map1.size() == 4); + rp3d_test(map1[56] == 34); + rp3d_test(map1.size() == 4); map1.add(Pair(56, 13), true); - test(map1[56] == 13); - test(map1.size() == 4); + rp3d_test(map1[56] == 13); + rp3d_test(map1.size() == 4); // ----- Test remove() ----- // map1.remove(1); - test(!map1.containsKey(1)); - test(map1.containsKey(8)); - test(map1.containsKey(13)); - test(map1.size() == 3); + rp3d_test(!map1.containsKey(1)); + rp3d_test(map1.containsKey(8)); + rp3d_test(map1.containsKey(13)); + rp3d_test(map1.size() == 3); map1.remove(13); - test(map1.containsKey(8)); - test(!map1.containsKey(13)); - test(map1.size() == 2); + rp3d_test(map1.containsKey(8)); + rp3d_test(!map1.containsKey(13)); + rp3d_test(map1.size() == 2); map1.remove(8); - test(!map1.containsKey(8)); - test(map1.size() == 1); + rp3d_test(!map1.containsKey(8)); + rp3d_test(map1.size() == 1); auto it = map1.remove(56); - test(!map1.containsKey(56)); - test(map1.size() == 0); - test(it == map1.end()); + rp3d_test(!map1.containsKey(56)); + rp3d_test(map1.size() == 0); + rp3d_test(it == map1.end()); isValid = true; for (int i = 0; i < 1000000; i++) { @@ -207,8 +207,8 @@ class TestMap : public Test { for (int i = 0; i < 1000000; i++) { if (map2.containsKey(i)) isValid = false; } - test(isValid); - test(map2.size() == 0); + rp3d_test(isValid); + rp3d_test(map2.size() == 0); Map map3(mAllocator); for (int i=0; i < 1000000; i++) { @@ -219,19 +219,19 @@ class TestMap : public Test { map3.add(Pair(1, 10)); map3.add(Pair(2, 20)); map3.add(Pair(3, 30)); - test(map3.size() == 3); + rp3d_test(map3.size() == 3); it = map3.begin(); map3.remove(it++); - test(!map3.containsKey(1)); - test(map3.size() == 2); - test(it->second == 20); + rp3d_test(!map3.containsKey(1)); + rp3d_test(map3.size() == 2); + rp3d_test(it->second == 20); map3.add(Pair(56, 32)); map3.add(Pair(23, 89)); for (it = map3.begin(); it != map3.end();) { it = map3.remove(it); } - test(map3.size() == 0); + rp3d_test(map3.size() == 0); // ----- Test clear() ----- // @@ -240,16 +240,16 @@ class TestMap : public Test { map4.add(Pair(4, 40)); map4.add(Pair(6, 60)); map4.clear(); - test(map4.size() == 0); + rp3d_test(map4.size() == 0); map4.add(Pair(2, 20)); - test(map4.size() == 1); - test(map4[2] == 20); + rp3d_test(map4.size() == 1); + rp3d_test(map4[2] == 20); map4.clear(); - test(map4.size() == 0); + rp3d_test(map4.size() == 0); Map map5(mAllocator); map5.clear(); - test(map5.size() == 0); + rp3d_test(map5.size() == 0); // ----- Test map with always same hash value for keys ----- // @@ -263,37 +263,37 @@ class TestMap : public Test { isTestValid = false; } } - test(isTestValid); + rp3d_test(isTestValid); for (int i=0; i < 1000; i++) { map6.remove(TestKey(i)); } - test(map6.size() == 0); + rp3d_test(map6.size() == 0); } void testContainsKey() { Map map1(mAllocator); - test(!map1.containsKey(2)); - test(!map1.containsKey(4)); - test(!map1.containsKey(6)); + rp3d_test(!map1.containsKey(2)); + rp3d_test(!map1.containsKey(4)); + rp3d_test(!map1.containsKey(6)); map1.add(Pair(2, 20)); map1.add(Pair(4, 40)); map1.add(Pair(6, 60)); - test(map1.containsKey(2)); - test(map1.containsKey(4)); - test(map1.containsKey(6)); + rp3d_test(map1.containsKey(2)); + rp3d_test(map1.containsKey(4)); + rp3d_test(map1.containsKey(6)); map1.remove(4); - test(!map1.containsKey(4)); - test(map1.containsKey(2)); - test(map1.containsKey(6)); + rp3d_test(!map1.containsKey(4)); + rp3d_test(map1.containsKey(2)); + rp3d_test(map1.containsKey(6)); map1.clear(); - test(!map1.containsKey(2)); - test(!map1.containsKey(6)); + rp3d_test(!map1.containsKey(2)); + rp3d_test(!map1.containsKey(6)); } void testIndexing() { @@ -302,17 +302,17 @@ class TestMap : public Test { map1.add(Pair(2, 20)); map1.add(Pair(4, 40)); map1.add(Pair(6, 60)); - test(map1[2] == 20); - test(map1[4] == 40); - test(map1[6] == 60); + rp3d_test(map1[2] == 20); + rp3d_test(map1[4] == 40); + rp3d_test(map1[6] == 60); map1[2] = 10; map1[4] = 20; map1[6] = 30; - test(map1[2] == 10); - test(map1[4] == 20); - test(map1[6] == 30); + rp3d_test(map1[2] == 10); + rp3d_test(map1[4] == 20); + rp3d_test(map1[6] == 30); } void testFind() { @@ -321,18 +321,18 @@ class TestMap : public Test { map1.add(Pair(2, 20)); map1.add(Pair(4, 40)); map1.add(Pair(6, 60)); - test(map1.find(2)->second == 20); - test(map1.find(4)->second == 40); - test(map1.find(6)->second == 60); - test(map1.find(45) == map1.end()); + rp3d_test(map1.find(2)->second == 20); + rp3d_test(map1.find(4)->second == 40); + rp3d_test(map1.find(6)->second == 60); + rp3d_test(map1.find(45) == map1.end()); map1[2] = 10; map1[4] = 20; map1[6] = 30; - test(map1.find(2)->second == 10); - test(map1.find(4)->second == 20); - test(map1.find(6)->second == 30); + rp3d_test(map1.find(2)->second == 10); + rp3d_test(map1.find(4)->second == 20); + rp3d_test(map1.find(6)->second == 30); } void testEquality() { @@ -340,7 +340,7 @@ class TestMap : public Test { Map map1(mAllocator, 10); Map map2(mAllocator, 2); - test(map1 == map2); + rp3d_test(map1 == map2); map1.add(Pair("a", 1)); map1.add(Pair("b", 2)); @@ -350,19 +350,19 @@ class TestMap : public Test { map2.add(Pair("b", 2)); map2.add(Pair("c", 4)); - test(map1 == map1); - test(map2 == map2); - test(map1 != map2); + rp3d_test(map1 == map1); + rp3d_test(map2 == map2); + rp3d_test(map1 != map2); map2["c"] = 3; - test(map1 == map2); + rp3d_test(map1 == map2); Map map3(mAllocator); map3.add(Pair("a", 1)); - test(map1 != map3); - test(map2 != map3); + rp3d_test(map1 != map3); + rp3d_test(map2 != map3); } void testAssignment() { @@ -374,40 +374,40 @@ class TestMap : public Test { Map map2(mAllocator); map2 = map1; - test(map2.size() == map1.size()); - test(map1 == map2); - test(map2[1] == 3); - test(map2[2] == 6); - test(map2[10] == 30); + rp3d_test(map2.size() == map1.size()); + rp3d_test(map1 == map2); + rp3d_test(map2[1] == 3); + rp3d_test(map2[2] == 6); + rp3d_test(map2[10] == 30); Map map3(mAllocator, 100); map3 = map1; - test(map3.size() == map1.size()); - test(map3 == map1); - test(map3[1] == 3); - test(map3[2] == 6); - test(map3[10] == 30); + rp3d_test(map3.size() == map1.size()); + rp3d_test(map3 == map1); + rp3d_test(map3[1] == 3); + rp3d_test(map3[2] == 6); + rp3d_test(map3[10] == 30); Map map4(mAllocator); map3 = map4; - test(map3.size() == 0); - test(map3 == map4); + rp3d_test(map3.size() == 0); + rp3d_test(map3 == map4); Map map5(mAllocator); map5.add(Pair(7, 8)); map5.add(Pair(19, 70)); map1 = map5; - test(map5.size() == map1.size()); - test(map5 == map1); - test(map1[7] == 8); - test(map1[19] == 70); + rp3d_test(map5.size() == map1.size()); + rp3d_test(map5 == map1); + rp3d_test(map1[7] == 8); + rp3d_test(map1[19] == 70); } void testIterators() { Map map1(mAllocator); - test(map1.begin() == map1.end()); + rp3d_test(map1.begin() == map1.end()); map1.add(Pair(1, 5)); map1.add(Pair(2, 6)); @@ -417,14 +417,14 @@ class TestMap : public Test { Map::Iterator itBegin = map1.begin(); Map::Iterator it = map1.begin(); - test(itBegin == it); + rp3d_test(itBegin == it); int size = 0; for (auto it = map1.begin(); it != map1.end(); ++it) { - test(map1.containsKey(it->first)); + rp3d_test(map1.containsKey(it->first)); size++; } - test(map1.size() == size); + rp3d_test(map1.size() == size); } }; diff --git a/test/tests/containers/TestSet.h b/test/tests/containers/TestSet.h index ddf2c245..6b3c5a59 100644 --- a/test/tests/containers/TestSet.h +++ b/test/tests/containers/TestSet.h @@ -97,51 +97,51 @@ class TestSet : public Test { // ----- Constructors ----- // Set set1(mAllocator); - test(set1.capacity() == 0); - test(set1.size() == 0); + rp3d_test(set1.capacity() == 0); + rp3d_test(set1.size() == 0); Set set2(mAllocator, 100); - test(set2.capacity() >= 100); - test(set2.size() == 0); + rp3d_test(set2.capacity() >= 100); + rp3d_test(set2.size() == 0); // ----- Copy Constructors ----- // Set set3(set1); - test(set3.capacity() == set1.capacity()); - test(set3.size() == set1.size()); + rp3d_test(set3.capacity() == set1.capacity()); + rp3d_test(set3.size() == set1.size()); Set set4(mAllocator); set4.add(10); set4.add(20); set4.add(30); - test(set4.capacity() >= 3); - test(set4.size() == 3); + rp3d_test(set4.capacity() >= 3); + rp3d_test(set4.size() == 3); set4.add(30); - test(set4.size() == 3); + rp3d_test(set4.size() == 3); Set set5(set4); - test(set5.capacity() == set4.capacity()); - test(set5.size() == set4.size()); - test(set5.contains(10)); - test(set5.contains(20)); - test(set5.contains(30)); + rp3d_test(set5.capacity() == set4.capacity()); + rp3d_test(set5.size() == set4.size()); + rp3d_test(set5.contains(10)); + rp3d_test(set5.contains(20)); + rp3d_test(set5.contains(30)); } void testReserve() { Set set1(mAllocator); set1.reserve(15); - test(set1.capacity() >= 15); + rp3d_test(set1.capacity() >= 15); set1.add("test1"); set1.add("test2"); - test(set1.capacity() >= 15); + rp3d_test(set1.capacity() >= 15); set1.reserve(10); - test(set1.capacity() >= 15); + rp3d_test(set1.capacity() >= 15); set1.reserve(100); - test(set1.capacity() >= 100); - test(set1.contains("test1")); - test(set1.contains("test2")); + rp3d_test(set1.capacity() >= 100); + rp3d_test(set1.contains("test1")); + rp3d_test(set1.contains("test2")); } void testAddRemoveClear() { @@ -152,10 +152,10 @@ class TestSet : public Test { set1.add(10); set1.add(80); set1.add(130); - test(set1.contains(10)); - test(set1.contains(80)); - test(set1.contains(130)); - test(set1.size() == 3); + rp3d_test(set1.contains(10)); + rp3d_test(set1.contains(80)); + rp3d_test(set1.contains(130)); + rp3d_test(set1.size() == 3); Set set2(mAllocator, 15); for (int i = 0; i < 1000000; i++) { @@ -165,40 +165,40 @@ class TestSet : public Test { for (int i = 0; i < 1000000; i++) { if (!set2.contains(i)) isValid = false; } - test(isValid); + rp3d_test(isValid); set1.remove(10); set1.add(10); - test(set1.size() == 3); - test(set1.contains(10)); + rp3d_test(set1.size() == 3); + rp3d_test(set1.contains(10)); set1.add(34); - test(set1.contains(34)); - test(set1.size() == 4); + rp3d_test(set1.contains(34)); + rp3d_test(set1.size() == 4); // ----- Test remove() ----- // set1.remove(10); - test(!set1.contains(10)); - test(set1.contains(80)); - test(set1.contains(130)); - test(set1.contains(34)); - test(set1.size() == 3); + rp3d_test(!set1.contains(10)); + rp3d_test(set1.contains(80)); + rp3d_test(set1.contains(130)); + rp3d_test(set1.contains(34)); + rp3d_test(set1.size() == 3); set1.remove(80); - test(!set1.contains(80)); - test(set1.contains(130)); - test(set1.contains(34)); - test(set1.size() == 2); + rp3d_test(!set1.contains(80)); + rp3d_test(set1.contains(130)); + rp3d_test(set1.contains(34)); + rp3d_test(set1.size() == 2); set1.remove(130); - test(!set1.contains(130)); - test(set1.contains(34)); - test(set1.size() == 1); + rp3d_test(!set1.contains(130)); + rp3d_test(set1.contains(34)); + rp3d_test(set1.size() == 1); set1.remove(34); - test(!set1.contains(34)); - test(set1.size() == 0); + rp3d_test(!set1.contains(34)); + rp3d_test(set1.size() == 0); isValid = true; for (int i = 0; i < 1000000; i++) { @@ -207,8 +207,8 @@ class TestSet : public Test { for (int i = 0; i < 1000000; i++) { if (set2.contains(i)) isValid = false; } - test(isValid); - test(set2.size() == 0); + rp3d_test(isValid); + rp3d_test(set2.size() == 0); Set set3(mAllocator); for (int i=0; i < 1000000; i++) { @@ -219,12 +219,12 @@ class TestSet : public Test { set3.add(1); set3.add(2); set3.add(3); - test(set3.size() == 3); + rp3d_test(set3.size() == 3); auto it = set3.begin(); set3.remove(it++); - test(!set3.contains(1)); - test(set3.size() == 2); - test(*it == 2); + rp3d_test(!set3.contains(1)); + rp3d_test(set3.size() == 2); + rp3d_test(*it == 2); set3.add(6); set3.add(7); @@ -232,7 +232,7 @@ class TestSet : public Test { for (it = set3.begin(); it != set3.end();) { it = set3.remove(it); } - test(set3.size() == 0); + rp3d_test(set3.size() == 0); // ----- Test clear() ----- // @@ -241,16 +241,16 @@ class TestSet : public Test { set4.add(4); set4.add(6); set4.clear(); - test(set4.size() == 0); + rp3d_test(set4.size() == 0); set4.add(2); - test(set4.size() == 1); - test(set4.contains(2)); + rp3d_test(set4.size() == 1); + rp3d_test(set4.contains(2)); set4.clear(); - test(set4.size() == 0); + rp3d_test(set4.size() == 0); Set set5(mAllocator); set5.clear(); - test(set5.size() == 0); + rp3d_test(set5.size() == 0); // ----- Test map with always same hash value for keys ----- // @@ -264,37 +264,37 @@ class TestSet : public Test { isTestValid = false; } } - test(isTestValid); + rp3d_test(isTestValid); for (int i=0; i < 1000; i++) { set6.remove(TestValueSet(i)); } - test(set6.size() == 0); + rp3d_test(set6.size() == 0); } void testContains() { Set set1(mAllocator); - test(!set1.contains(2)); - test(!set1.contains(4)); - test(!set1.contains(6)); + rp3d_test(!set1.contains(2)); + rp3d_test(!set1.contains(4)); + rp3d_test(!set1.contains(6)); set1.add(2); set1.add(4); set1.add(6); - test(set1.contains(2)); - test(set1.contains(4)); - test(set1.contains(6)); + rp3d_test(set1.contains(2)); + rp3d_test(set1.contains(4)); + rp3d_test(set1.contains(6)); set1.remove(4); - test(!set1.contains(4)); - test(set1.contains(2)); - test(set1.contains(6)); + rp3d_test(!set1.contains(4)); + rp3d_test(set1.contains(2)); + rp3d_test(set1.contains(6)); set1.clear(); - test(!set1.contains(2)); - test(!set1.contains(6)); + rp3d_test(!set1.contains(2)); + rp3d_test(!set1.contains(6)); } void testFind() { @@ -303,14 +303,14 @@ class TestSet : public Test { set1.add(2); set1.add(4); set1.add(6); - test(set1.find(2) != set1.end()); - test(set1.find(4) != set1.end()); - test(set1.find(6) != set1.end()); - test(set1.find(45) == set1.end()); + rp3d_test(set1.find(2) != set1.end()); + rp3d_test(set1.find(4) != set1.end()); + rp3d_test(set1.find(6) != set1.end()); + rp3d_test(set1.find(45) == set1.end()); set1.remove(2); - test(set1.find(2) == set1.end()); + rp3d_test(set1.find(2) == set1.end()); } void testEquality() { @@ -318,7 +318,7 @@ class TestSet : public Test { Set set1(mAllocator, 10); Set set2(mAllocator, 2); - test(set1 == set2); + rp3d_test(set1 == set2); set1.add("a"); set1.add("b"); @@ -328,25 +328,25 @@ class TestSet : public Test { set2.add("b"); set2.add("h"); - test(set1 == set1); - test(set2 == set2); - test(set1 != set2); - test(set2 != set1); + rp3d_test(set1 == set1); + rp3d_test(set2 == set2); + rp3d_test(set1 != set2); + rp3d_test(set2 != set1); set1.add("a"); set2.remove("h"); set2.add("c"); - test(set1 == set2); - test(set2 == set1); + rp3d_test(set1 == set2); + rp3d_test(set2 == set1); Set set3(mAllocator); set3.add("a"); - test(set1 != set3); - test(set2 != set3); - test(set3 != set1); - test(set3 != set2); + rp3d_test(set1 != set3); + rp3d_test(set2 != set3); + rp3d_test(set3 != set1); + rp3d_test(set3 != set2); } void testAssignment() { @@ -358,40 +358,40 @@ class TestSet : public Test { Set set2(mAllocator); set2 = set1; - test(set2.size() == set1.size()); - test(set2.contains(1)); - test(set2.contains(2)); - test(set2.contains(10)); - test(set1 == set2); + rp3d_test(set2.size() == set1.size()); + rp3d_test(set2.contains(1)); + rp3d_test(set2.contains(2)); + rp3d_test(set2.contains(10)); + rp3d_test(set1 == set2); Set set3(mAllocator, 100); set3 = set1; - test(set3.size() == set1.size()); - test(set3 == set1); - test(set3.contains(1)); - test(set3.contains(2)); - test(set3.contains(10)); + rp3d_test(set3.size() == set1.size()); + rp3d_test(set3 == set1); + rp3d_test(set3.contains(1)); + rp3d_test(set3.contains(2)); + rp3d_test(set3.contains(10)); Set set4(mAllocator); set3 = set4; - test(set3.size() == 0); - test(set3 == set4); + rp3d_test(set3.size() == 0); + rp3d_test(set3 == set4); Set set5(mAllocator); set5.add(7); set5.add(19); set1 = set5; - test(set5.size() == set1.size()); - test(set1 == set5); - test(set1.contains(7)); - test(set1.contains(19)); + rp3d_test(set5.size() == set1.size()); + rp3d_test(set1 == set5); + rp3d_test(set1.contains(7)); + rp3d_test(set1.contains(19)); } void testIterators() { Set set1(mAllocator); - test(set1.begin() == set1.end()); + rp3d_test(set1.begin() == set1.end()); set1.add(1); set1.add(2); @@ -401,14 +401,14 @@ class TestSet : public Test { Set::Iterator itBegin = set1.begin(); Set::Iterator it = set1.begin(); - test(itBegin == it); + rp3d_test(itBegin == it); int size = 0; for (auto it = set1.begin(); it != set1.end(); ++it) { - test(set1.contains(*it)); + rp3d_test(set1.contains(*it)); size++; } - test(set1.size() == size); + rp3d_test(set1.size() == size); } }; diff --git a/test/tests/mathematics/TestMathematicsFunctions.h b/test/tests/mathematics/TestMathematicsFunctions.h index 5af12e60..f6283d3f 100644 --- a/test/tests/mathematics/TestMathematicsFunctions.h +++ b/test/tests/mathematics/TestMathematicsFunctions.h @@ -56,52 +56,52 @@ class TestMathematicsFunctions : public Test { void run() { // Test approxEqual() - test(approxEqual(2, 7, 5.2)); - test(approxEqual(7, 2, 5.2)); - test(approxEqual(6, 6)); - test(!approxEqual(1, 5)); - test(!approxEqual(1, 5, 3)); - test(approxEqual(-2, -2)); - test(approxEqual(-2, -7, 6)); - test(!approxEqual(-2, 7, 2)); - test(approxEqual(-3, 8, 12)); - test(!approxEqual(-3, 8, 6)); + rp3d_test(approxEqual(2, 7, 5.2)); + rp3d_test(approxEqual(7, 2, 5.2)); + rp3d_test(approxEqual(6, 6)); + rp3d_test(!approxEqual(1, 5)); + rp3d_test(!approxEqual(1, 5, 3)); + rp3d_test(approxEqual(-2, -2)); + rp3d_test(approxEqual(-2, -7, 6)); + rp3d_test(!approxEqual(-2, 7, 2)); + rp3d_test(approxEqual(-3, 8, 12)); + rp3d_test(!approxEqual(-3, 8, 6)); // Test clamp() - test(clamp(4, -3, 5) == 4); - test(clamp(-3, 1, 8) == 1); - test(clamp(45, -6, 7) == 7); - test(clamp(-5, -2, -1) == -2); - test(clamp(-5, -9, -1) == -5); - test(clamp(6, 6, 9) == 6); - test(clamp(9, 6, 9) == 9); - test(clamp(decimal(4), decimal(-3), decimal(5)) == decimal(4)); - test(clamp(decimal(-3), decimal(1), decimal(8)) == decimal(1)); - test(clamp(decimal(45), decimal(-6), decimal(7)) == decimal(7)); - test(clamp(decimal(-5), decimal(-2), decimal(-1)) == decimal(-2)); - test(clamp(decimal(-5), decimal(-9), decimal(-1)) == decimal(-5)); - test(clamp(decimal(6), decimal(6), decimal(9)) == decimal(6)); - test(clamp(decimal(9), decimal(6), decimal(9)) == decimal(9)); + rp3d_test(clamp(4, -3, 5) == 4); + rp3d_test(clamp(-3, 1, 8) == 1); + rp3d_test(clamp(45, -6, 7) == 7); + rp3d_test(clamp(-5, -2, -1) == -2); + rp3d_test(clamp(-5, -9, -1) == -5); + rp3d_test(clamp(6, 6, 9) == 6); + rp3d_test(clamp(9, 6, 9) == 9); + rp3d_test(clamp(decimal(4), decimal(-3), decimal(5)) == decimal(4)); + rp3d_test(clamp(decimal(-3), decimal(1), decimal(8)) == decimal(1)); + rp3d_test(clamp(decimal(45), decimal(-6), decimal(7)) == decimal(7)); + rp3d_test(clamp(decimal(-5), decimal(-2), decimal(-1)) == decimal(-2)); + rp3d_test(clamp(decimal(-5), decimal(-9), decimal(-1)) == decimal(-5)); + rp3d_test(clamp(decimal(6), decimal(6), decimal(9)) == decimal(6)); + rp3d_test(clamp(decimal(9), decimal(6), decimal(9)) == decimal(9)); // Test min3() - test(min3(1, 5, 7) == 1); - test(min3(-4, 2, 4) == -4); - test(min3(-1, -5, -7) == -7); - test(min3(13, 5, 47) == 5); - test(min3(4, 4, 4) == 4); + rp3d_test(min3(1, 5, 7) == 1); + rp3d_test(min3(-4, 2, 4) == -4); + rp3d_test(min3(-1, -5, -7) == -7); + rp3d_test(min3(13, 5, 47) == 5); + rp3d_test(min3(4, 4, 4) == 4); // Test max3() - test(max3(1, 5, 7) == 7); - test(max3(-4, 2, 4) == 4); - test(max3(-1, -5, -7) == -1); - test(max3(13, 5, 47) == 47); - test(max3(4, 4, 4) == 4); + rp3d_test(max3(1, 5, 7) == 7); + rp3d_test(max3(-4, 2, 4) == 4); + rp3d_test(max3(-1, -5, -7) == -1); + rp3d_test(max3(13, 5, 47) == 47); + rp3d_test(max3(4, 4, 4) == 4); // Test sameSign() - test(sameSign(4, 53)); - test(sameSign(-4, -8)); - test(!sameSign(4, -7)); - test(!sameSign(-4, 53)); + rp3d_test(sameSign(4, 53)); + rp3d_test(sameSign(-4, -8)); + rp3d_test(!sameSign(4, -7)); + rp3d_test(!sameSign(-4, 53)); // Test computePointToPlaneDistance() Vector3 p(8, 4, 0); @@ -109,9 +109,9 @@ class TestMathematicsFunctions : public Test { Vector3 n2(-1, 0, 0); Vector3 q1(1, 54, 0); Vector3 q2(8, 17, 0); - test(approxEqual(computePointToPlaneDistance(q1, n1, p), decimal(-7))); - test(approxEqual(computePointToPlaneDistance(q1, n2, p), decimal(7))); - test(approxEqual(computePointToPlaneDistance(q2, n2, p), decimal(0.0))); + rp3d_test(approxEqual(computePointToPlaneDistance(q1, n1, p), decimal(-7))); + rp3d_test(approxEqual(computePointToPlaneDistance(q1, n2, p), decimal(7))); + rp3d_test(approxEqual(computePointToPlaneDistance(q2, n2, p), decimal(0.0))); // Test computeBarycentricCoordinatesInTriangle() Vector3 a(0, 0, 0); @@ -120,66 +120,66 @@ class TestMathematicsFunctions : public Test { Vector3 testPoint(4, 0, 1); decimal u,v,w; computeBarycentricCoordinatesInTriangle(a, b, c, a, u, v, w); - test(approxEqual(u, 1.0, 0.000001)); - test(approxEqual(v, 0.0, 0.000001)); - test(approxEqual(w, 0.0, 0.000001)); + rp3d_test(approxEqual(u, 1.0, 0.000001)); + rp3d_test(approxEqual(v, 0.0, 0.000001)); + rp3d_test(approxEqual(w, 0.0, 0.000001)); computeBarycentricCoordinatesInTriangle(a, b, c, b, u, v, w); - test(approxEqual(u, 0.0, 0.000001)); - test(approxEqual(v, 1.0, 0.000001)); - test(approxEqual(w, 0.0, 0.000001)); + rp3d_test(approxEqual(u, 0.0, 0.000001)); + rp3d_test(approxEqual(v, 1.0, 0.000001)); + rp3d_test(approxEqual(w, 0.0, 0.000001)); computeBarycentricCoordinatesInTriangle(a, b, c, c, u, v, w); - test(approxEqual(u, 0.0, 0.000001)); - test(approxEqual(v, 0.0, 0.000001)); - test(approxEqual(w, 1.0, 0.000001)); + rp3d_test(approxEqual(u, 0.0, 0.000001)); + rp3d_test(approxEqual(v, 0.0, 0.000001)); + rp3d_test(approxEqual(w, 1.0, 0.000001)); computeBarycentricCoordinatesInTriangle(a, b, c, testPoint, u, v, w); - test(approxEqual(u + v + w, 1.0, 0.000001)); + rp3d_test(approxEqual(u + v + w, 1.0, 0.000001)); // Test computeClosestPointBetweenTwoSegments() Vector3 closestSeg1, closestSeg2; computeClosestPointBetweenTwoSegments(Vector3(4, 0, 0), Vector3(6, 0, 0), Vector3(8, 0, 0), Vector3(8, 6, 0), closestSeg1, closestSeg2); - test(approxEqual(closestSeg1.x, 6.0, 0.000001)); - test(approxEqual(closestSeg1.y, 0.0, 0.000001)); - test(approxEqual(closestSeg1.z, 0.0, 0.000001)); - test(approxEqual(closestSeg2.x, 8.0, 0.000001)); - test(approxEqual(closestSeg2.y, 0.0, 0.000001)); - test(approxEqual(closestSeg2.z, 0.0, 0.000001)); + rp3d_test(approxEqual(closestSeg1.x, 6.0, 0.000001)); + rp3d_test(approxEqual(closestSeg1.y, 0.0, 0.000001)); + rp3d_test(approxEqual(closestSeg1.z, 0.0, 0.000001)); + rp3d_test(approxEqual(closestSeg2.x, 8.0, 0.000001)); + rp3d_test(approxEqual(closestSeg2.y, 0.0, 0.000001)); + rp3d_test(approxEqual(closestSeg2.z, 0.0, 0.000001)); computeClosestPointBetweenTwoSegments(Vector3(4, 6, 5), Vector3(4, 6, 5), Vector3(8, 3, -9), Vector3(8, 3, -9), closestSeg1, closestSeg2); - test(approxEqual(closestSeg1.x, 4.0, 0.000001)); - test(approxEqual(closestSeg1.y, 6.0, 0.000001)); - test(approxEqual(closestSeg1.z, 5.0, 0.000001)); - test(approxEqual(closestSeg2.x, 8.0, 0.000001)); - test(approxEqual(closestSeg2.y, 3.0, 0.000001)); - test(approxEqual(closestSeg2.z, -9.0, 0.000001)); + rp3d_test(approxEqual(closestSeg1.x, 4.0, 0.000001)); + rp3d_test(approxEqual(closestSeg1.y, 6.0, 0.000001)); + rp3d_test(approxEqual(closestSeg1.z, 5.0, 0.000001)); + rp3d_test(approxEqual(closestSeg2.x, 8.0, 0.000001)); + rp3d_test(approxEqual(closestSeg2.y, 3.0, 0.000001)); + rp3d_test(approxEqual(closestSeg2.z, -9.0, 0.000001)); computeClosestPointBetweenTwoSegments(Vector3(0, -5, 0), Vector3(0, 8, 0), Vector3(6, 3, 0), Vector3(10, -3, 0), closestSeg1, closestSeg2); - test(approxEqual(closestSeg1.x, 0.0, 0.000001)); - test(approxEqual(closestSeg1.y, 3.0, 0.000001)); - test(approxEqual(closestSeg1.z, 0.0, 0.000001)); - test(approxEqual(closestSeg2.x, 6.0, 0.000001)); - test(approxEqual(closestSeg2.y, 3.0, 0.000001)); - test(approxEqual(closestSeg2.z, 0.0, 0.000001)); + rp3d_test(approxEqual(closestSeg1.x, 0.0, 0.000001)); + rp3d_test(approxEqual(closestSeg1.y, 3.0, 0.000001)); + rp3d_test(approxEqual(closestSeg1.z, 0.0, 0.000001)); + rp3d_test(approxEqual(closestSeg2.x, 6.0, 0.000001)); + rp3d_test(approxEqual(closestSeg2.y, 3.0, 0.000001)); + rp3d_test(approxEqual(closestSeg2.z, 0.0, 0.000001)); computeClosestPointBetweenTwoSegments(Vector3(1, -4, -5), Vector3(1, 4, -5), Vector3(-6, 5, -5), Vector3(6, 5, -5), closestSeg1, closestSeg2); - test(approxEqual(closestSeg1.x, 1.0, 0.000001)); - test(approxEqual(closestSeg1.y, 4.0, 0.000001)); - test(approxEqual(closestSeg1.z, -5.0, 0.000001)); - test(approxEqual(closestSeg2.x, 1.0, 0.000001)); - test(approxEqual(closestSeg2.y, 5.0, 0.000001)); - test(approxEqual(closestSeg2.z, -5.0, 0.000001)); + rp3d_test(approxEqual(closestSeg1.x, 1.0, 0.000001)); + rp3d_test(approxEqual(closestSeg1.y, 4.0, 0.000001)); + rp3d_test(approxEqual(closestSeg1.z, -5.0, 0.000001)); + rp3d_test(approxEqual(closestSeg2.x, 1.0, 0.000001)); + rp3d_test(approxEqual(closestSeg2.y, 5.0, 0.000001)); + rp3d_test(approxEqual(closestSeg2.z, -5.0, 0.000001)); // Test computePlaneSegmentIntersection(); - test(approxEqual(computePlaneSegmentIntersection(Vector3(-6, 3, 0), Vector3(6, 3, 0), 0.0, Vector3(-1, 0, 0)), 0.5, 0.000001)); - test(approxEqual(computePlaneSegmentIntersection(Vector3(-6, 3, 0), Vector3(6, 3, 0), 0.0, Vector3(1, 0, 0)), 0.5, 0.000001)); - test(approxEqual(computePlaneSegmentIntersection(Vector3(5, 12, 0), Vector3(5, 4, 0), 6, Vector3(0, 1, 0)), 0.75, 0.000001)); - test(approxEqual(computePlaneSegmentIntersection(Vector3(5, 4, 8), Vector3(9, 14, 8), 4, Vector3(0, 1, 0)), 0.0, 0.000001)); + rp3d_test(approxEqual(computePlaneSegmentIntersection(Vector3(-6, 3, 0), Vector3(6, 3, 0), 0.0, Vector3(-1, 0, 0)), 0.5, 0.000001)); + rp3d_test(approxEqual(computePlaneSegmentIntersection(Vector3(-6, 3, 0), Vector3(6, 3, 0), 0.0, Vector3(1, 0, 0)), 0.5, 0.000001)); + rp3d_test(approxEqual(computePlaneSegmentIntersection(Vector3(5, 12, 0), Vector3(5, 4, 0), 6, Vector3(0, 1, 0)), 0.75, 0.000001)); + rp3d_test(approxEqual(computePlaneSegmentIntersection(Vector3(5, 4, 8), Vector3(9, 14, 8), 4, Vector3(0, 1, 0)), 0.0, 0.000001)); decimal tIntersect = computePlaneSegmentIntersection(Vector3(5, 4, 0), Vector3(9, 4, 0), 4, Vector3(0, 1, 0)); - test(tIntersect < 0.0 || tIntersect > 1.0); + rp3d_test(tIntersect < 0.0 || tIntersect > 1.0); // Test computePointToLineDistance() - test(approxEqual(computePointToLineDistance(Vector3(6, 0, 0), Vector3(14, 0, 0), Vector3(5, 3, 0)), 3.0, 0.000001)); - test(approxEqual(computePointToLineDistance(Vector3(6, -5, 0), Vector3(10, -5, 0), Vector3(4, 3, 0)), 8.0, 0.000001)); - test(approxEqual(computePointToLineDistance(Vector3(6, -5, 0), Vector3(10, -5, 0), Vector3(-43, 254, 0)), 259.0, 0.000001)); - test(approxEqual(computePointToLineDistance(Vector3(6, -5, 8), Vector3(10, -5, -5), Vector3(6, -5, 8)), 0.0, 0.000001)); - test(approxEqual(computePointToLineDistance(Vector3(6, -5, 8), Vector3(10, -5, -5), Vector3(10, -5, -5)), 0.0, 0.000001)); + rp3d_test(approxEqual(computePointToLineDistance(Vector3(6, 0, 0), Vector3(14, 0, 0), Vector3(5, 3, 0)), 3.0, 0.000001)); + rp3d_test(approxEqual(computePointToLineDistance(Vector3(6, -5, 0), Vector3(10, -5, 0), Vector3(4, 3, 0)), 8.0, 0.000001)); + rp3d_test(approxEqual(computePointToLineDistance(Vector3(6, -5, 0), Vector3(10, -5, 0), Vector3(-43, 254, 0)), 259.0, 0.000001)); + rp3d_test(approxEqual(computePointToLineDistance(Vector3(6, -5, 8), Vector3(10, -5, -5), Vector3(6, -5, 8)), 0.0, 0.000001)); + rp3d_test(approxEqual(computePointToLineDistance(Vector3(6, -5, 8), Vector3(10, -5, -5), Vector3(10, -5, -5)), 0.0, 0.000001)); // Test clipSegmentWithPlanes() std::vector segmentVertices; @@ -193,46 +193,46 @@ class TestMathematicsFunctions : public Test { List clipSegmentVertices = clipSegmentWithPlanes(segmentVertices[0], segmentVertices[1], planesPoints, planesNormals, mAllocator); - test(clipSegmentVertices.size() == 2); - test(approxEqual(clipSegmentVertices[0].x, -6, 0.000001)); - test(approxEqual(clipSegmentVertices[0].y, 3, 0.000001)); - test(approxEqual(clipSegmentVertices[0].z, 0, 0.000001)); - test(approxEqual(clipSegmentVertices[1].x, 4, 0.000001)); - test(approxEqual(clipSegmentVertices[1].y, 3, 0.000001)); - test(approxEqual(clipSegmentVertices[1].z, 0, 0.000001)); + rp3d_test(clipSegmentVertices.size() == 2); + rp3d_test(approxEqual(clipSegmentVertices[0].x, -6, 0.000001)); + rp3d_test(approxEqual(clipSegmentVertices[0].y, 3, 0.000001)); + rp3d_test(approxEqual(clipSegmentVertices[0].z, 0, 0.000001)); + rp3d_test(approxEqual(clipSegmentVertices[1].x, 4, 0.000001)); + rp3d_test(approxEqual(clipSegmentVertices[1].y, 3, 0.000001)); + rp3d_test(approxEqual(clipSegmentVertices[1].z, 0, 0.000001)); segmentVertices.clear(); segmentVertices.push_back(Vector3(8, 3, 0)); segmentVertices.push_back(Vector3(-6, 3, 0)); clipSegmentVertices = clipSegmentWithPlanes(segmentVertices[0], segmentVertices[1], planesPoints, planesNormals, mAllocator); - test(clipSegmentVertices.size() == 2); - test(approxEqual(clipSegmentVertices[0].x, 4, 0.000001)); - test(approxEqual(clipSegmentVertices[0].y, 3, 0.000001)); - test(approxEqual(clipSegmentVertices[0].z, 0, 0.000001)); - test(approxEqual(clipSegmentVertices[1].x, -6, 0.000001)); - test(approxEqual(clipSegmentVertices[1].y, 3, 0.000001)); - test(approxEqual(clipSegmentVertices[1].z, 0, 0.000001)); + rp3d_test(clipSegmentVertices.size() == 2); + rp3d_test(approxEqual(clipSegmentVertices[0].x, 4, 0.000001)); + rp3d_test(approxEqual(clipSegmentVertices[0].y, 3, 0.000001)); + rp3d_test(approxEqual(clipSegmentVertices[0].z, 0, 0.000001)); + rp3d_test(approxEqual(clipSegmentVertices[1].x, -6, 0.000001)); + rp3d_test(approxEqual(clipSegmentVertices[1].y, 3, 0.000001)); + rp3d_test(approxEqual(clipSegmentVertices[1].z, 0, 0.000001)); segmentVertices.clear(); segmentVertices.push_back(Vector3(-6, 3, 0)); segmentVertices.push_back(Vector3(3, 3, 0)); clipSegmentVertices = clipSegmentWithPlanes(segmentVertices[0], segmentVertices[1], planesPoints, planesNormals, mAllocator); - test(clipSegmentVertices.size() == 2); - test(approxEqual(clipSegmentVertices[0].x, -6, 0.000001)); - test(approxEqual(clipSegmentVertices[0].y, 3, 0.000001)); - test(approxEqual(clipSegmentVertices[0].z, 0, 0.000001)); - test(approxEqual(clipSegmentVertices[1].x, 3, 0.000001)); - test(approxEqual(clipSegmentVertices[1].y, 3, 0.000001)); - test(approxEqual(clipSegmentVertices[1].z, 0, 0.000001)); + rp3d_test(clipSegmentVertices.size() == 2); + rp3d_test(approxEqual(clipSegmentVertices[0].x, -6, 0.000001)); + rp3d_test(approxEqual(clipSegmentVertices[0].y, 3, 0.000001)); + rp3d_test(approxEqual(clipSegmentVertices[0].z, 0, 0.000001)); + rp3d_test(approxEqual(clipSegmentVertices[1].x, 3, 0.000001)); + rp3d_test(approxEqual(clipSegmentVertices[1].y, 3, 0.000001)); + rp3d_test(approxEqual(clipSegmentVertices[1].z, 0, 0.000001)); segmentVertices.clear(); segmentVertices.push_back(Vector3(5, 3, 0)); segmentVertices.push_back(Vector3(8, 3, 0)); clipSegmentVertices = clipSegmentWithPlanes(segmentVertices[0], segmentVertices[1], planesPoints, planesNormals, mAllocator); - test(clipSegmentVertices.size() == 0); + rp3d_test(clipSegmentVertices.size() == 0); // Test clipPolygonWithPlanes() List polygonVertices(mAllocator); @@ -253,19 +253,19 @@ class TestMathematicsFunctions : public Test { polygonPlanesPoints.add(Vector3(10, 5, 0)); List clipPolygonVertices = clipPolygonWithPlanes(polygonVertices, polygonPlanesPoints, polygonPlanesNormals, mAllocator); - test(clipPolygonVertices.size() == 4); - test(approxEqual(clipPolygonVertices[0].x, 0, 0.000001)); - test(approxEqual(clipPolygonVertices[0].y, 2, 0.000001)); - test(approxEqual(clipPolygonVertices[0].z, 0, 0.000001)); - test(approxEqual(clipPolygonVertices[1].x, 7, 0.000001)); - test(approxEqual(clipPolygonVertices[1].y, 2, 0.000001)); - test(approxEqual(clipPolygonVertices[1].z, 0, 0.000001)); - test(approxEqual(clipPolygonVertices[2].x, 7, 0.000001)); - test(approxEqual(clipPolygonVertices[2].y, 4, 0.000001)); - test(approxEqual(clipPolygonVertices[2].z, 0, 0.000001)); - test(approxEqual(clipPolygonVertices[3].x, 0, 0.000001)); - test(approxEqual(clipPolygonVertices[3].y, 4, 0.000001)); - test(approxEqual(clipPolygonVertices[3].z, 0, 0.000001)); + rp3d_test(clipPolygonVertices.size() == 4); + rp3d_test(approxEqual(clipPolygonVertices[0].x, 0, 0.000001)); + rp3d_test(approxEqual(clipPolygonVertices[0].y, 2, 0.000001)); + rp3d_test(approxEqual(clipPolygonVertices[0].z, 0, 0.000001)); + rp3d_test(approxEqual(clipPolygonVertices[1].x, 7, 0.000001)); + rp3d_test(approxEqual(clipPolygonVertices[1].y, 2, 0.000001)); + rp3d_test(approxEqual(clipPolygonVertices[1].z, 0, 0.000001)); + rp3d_test(approxEqual(clipPolygonVertices[2].x, 7, 0.000001)); + rp3d_test(approxEqual(clipPolygonVertices[2].y, 4, 0.000001)); + rp3d_test(approxEqual(clipPolygonVertices[2].z, 0, 0.000001)); + rp3d_test(approxEqual(clipPolygonVertices[3].x, 0, 0.000001)); + rp3d_test(approxEqual(clipPolygonVertices[3].y, 4, 0.000001)); + rp3d_test(approxEqual(clipPolygonVertices[3].z, 0, 0.000001)); } diff --git a/test/tests/mathematics/TestMatrix2x2.h b/test/tests/mathematics/TestMatrix2x2.h index 7a1d38d7..8189cb51 100644 --- a/test/tests/mathematics/TestMatrix2x2.h +++ b/test/tests/mathematics/TestMatrix2x2.h @@ -76,17 +76,17 @@ class TestMatrix2x2 : public Test { Matrix2x2 test2(2, 3, 4, 5); Matrix2x2 test3(mMatrix1); - test(test1[0][0] == 5); - test(test1[0][1] == 5); - test(test1[1][0] == 5); - test(test1[1][1] == 5); + rp3d_test(test1[0][0] == 5); + rp3d_test(test1[0][1] == 5); + rp3d_test(test1[1][0] == 5); + rp3d_test(test1[1][1] == 5); - test(test2[0][0] == 2); - test(test2[0][1] == 3); - test(test2[1][0] == 4); - test(test2[1][1] == 5); + rp3d_test(test2[0][0] == 2); + rp3d_test(test2[0][1] == 3); + rp3d_test(test2[1][0] == 4); + rp3d_test(test2[1][1] == 5); - test(test3 == mMatrix1); + rp3d_test(test3 == mMatrix1); } /// Test the getter and setter methods @@ -95,23 +95,23 @@ class TestMatrix2x2 : public Test { // Test method to set all the values Matrix2x2 test2; test2.setAllValues(2, 24, -4, 5); - test(test2 == mMatrix1); + rp3d_test(test2 == mMatrix1); // Test method to set to zero test2.setToZero(); - test(test2 == Matrix2x2(0, 0, 0, 0)); + rp3d_test(test2 == Matrix2x2(0, 0, 0, 0)); // Test method that returns a column Vector2 column1 = mMatrix1.getColumn(0); Vector2 column2 = mMatrix1.getColumn(1); - test(column1 == Vector2(2, -4)); - test(column2 == Vector2(24, 5)); + rp3d_test(column1 == Vector2(2, -4)); + rp3d_test(column2 == Vector2(24, 5)); // Test method that returns a row Vector2 row1 = mMatrix1.getRow(0); Vector2 row2 = mMatrix1.getRow(1); - test(row1 == Vector2(2, 24)); - test(row2 == Vector2(-4, 5)); + rp3d_test(row1 == Vector2(2, 24)); + rp3d_test(row2 == Vector2(-4, 5)); } /// Test the identity methods @@ -121,12 +121,12 @@ class TestMatrix2x2 : public Test { Matrix2x2 test1; test1.setToIdentity(); - test(identity[0][0] == 1); - test(identity[0][1] == 0); - test(identity[1][0] == 0); - test(identity[1][1] == 1); + rp3d_test(identity[0][0] == 1); + rp3d_test(identity[0][1] == 0); + rp3d_test(identity[1][0] == 0); + rp3d_test(identity[1][1] == 1); - test(test1 == Matrix2x2::identity()); + rp3d_test(test1 == Matrix2x2::identity()); } /// Test the zero method @@ -134,10 +134,10 @@ class TestMatrix2x2 : public Test { Matrix2x2 zero = Matrix2x2::zero(); - test(zero[0][0] == 0); - test(zero[0][1] == 0); - test(zero[1][0] == 0); - test(zero[1][1] == 0); + rp3d_test(zero[0][0] == 0); + rp3d_test(zero[0][1] == 0); + rp3d_test(zero[1][0] == 0); + rp3d_test(zero[1][1] == 0); } /// Test others methods @@ -145,36 +145,36 @@ class TestMatrix2x2 : public Test { // Test transpose Matrix2x2 transpose = mMatrix1.getTranspose(); - test(transpose == Matrix2x2(2, -4, 24, 5)); + rp3d_test(transpose == Matrix2x2(2, -4, 24, 5)); // Test trace - test(mMatrix1.getTrace() ==7); - test(Matrix2x2::identity().getTrace() == 2); + rp3d_test(mMatrix1.getTrace() ==7); + rp3d_test(Matrix2x2::identity().getTrace() == 2); // Test determinant Matrix2x2 matrix(-24, 64, 253, -35); - test(mMatrix1.getDeterminant() == 106); - test(matrix.getDeterminant() == -15352); - test(mIdentity.getDeterminant() == 1); + rp3d_test(mMatrix1.getDeterminant() == 106); + rp3d_test(matrix.getDeterminant() == -15352); + rp3d_test(mIdentity.getDeterminant() == 1); // Test inverse Matrix2x2 matrix2(1, 2, 3, 4); Matrix2x2 inverseMatrix = matrix2.getInverse(); - test(approxEqual(inverseMatrix[0][0], decimal(-2), decimal(10e-6))); - test(approxEqual(inverseMatrix[0][1], decimal(1), decimal(10e-6))); - test(approxEqual(inverseMatrix[1][0], decimal(1.5), decimal(10e-6))); - test(approxEqual(inverseMatrix[1][1], decimal(-0.5), decimal(10e-6))); + rp3d_test(approxEqual(inverseMatrix[0][0], decimal(-2), decimal(10e-6))); + rp3d_test(approxEqual(inverseMatrix[0][1], decimal(1), decimal(10e-6))); + rp3d_test(approxEqual(inverseMatrix[1][0], decimal(1.5), decimal(10e-6))); + rp3d_test(approxEqual(inverseMatrix[1][1], decimal(-0.5), decimal(10e-6))); Matrix2x2 inverseMatrix1 = mMatrix1.getInverse(); - test(approxEqual(inverseMatrix1[0][0], decimal(0.047169811), decimal(10e-6))); - test(approxEqual(inverseMatrix1[0][1], decimal(-0.226415094), decimal(10e-6))); - test(approxEqual(inverseMatrix1[1][0], decimal(0.037735849), decimal(10e-6))); - test(approxEqual(inverseMatrix1[1][1], decimal(0.018867925), decimal(10e-6))); + rp3d_test(approxEqual(inverseMatrix1[0][0], decimal(0.047169811), decimal(10e-6))); + rp3d_test(approxEqual(inverseMatrix1[0][1], decimal(-0.226415094), decimal(10e-6))); + rp3d_test(approxEqual(inverseMatrix1[1][0], decimal(0.037735849), decimal(10e-6))); + rp3d_test(approxEqual(inverseMatrix1[1][1], decimal(0.018867925), decimal(10e-6))); // Test absolute matrix Matrix2x2 matrix3(-2, -3, -4, -5); - test(matrix.getAbsoluteMatrix() == Matrix2x2(24, 64, 253, 35)); + rp3d_test(matrix.getAbsoluteMatrix() == Matrix2x2(24, 64, 253, 35)); Matrix2x2 absoluteMatrix = matrix3.getAbsoluteMatrix(); - test(absoluteMatrix == Matrix2x2(2, 3, 4, 5)); + rp3d_test(absoluteMatrix == Matrix2x2(2, 3, 4, 5)); } /// Test the operators @@ -186,54 +186,54 @@ class TestMatrix2x2 : public Test { Matrix2x2 addition1 = matrix1 + matrix2; Matrix2x2 addition2(matrix1); addition2 += matrix2; - test(addition1 == Matrix2x2(0, 6, -1, 15)); - test(addition2 == Matrix2x2(0, 6, -1, 15)); + rp3d_test(addition1 == Matrix2x2(0, 6, -1, 15)); + rp3d_test(addition2 == Matrix2x2(0, 6, -1, 15)); // Test substraction Matrix2x2 substraction1 = matrix1 - matrix2; Matrix2x2 substraction2(matrix1); substraction2 -= matrix2; - test(substraction1 == Matrix2x2(4, 0, 9, -5)); - test(substraction2 == Matrix2x2(4, 0, 9, -5)); + rp3d_test(substraction1 == Matrix2x2(4, 0, 9, -5)); + rp3d_test(substraction2 == Matrix2x2(4, 0, 9, -5)); // Test negative operator Matrix2x2 negative = -matrix1; - test(negative == Matrix2x2(-2, -3, -4, -5)); + rp3d_test(negative == Matrix2x2(-2, -3, -4, -5)); // Test multiplication with a number Matrix2x2 multiplication1 = 3 * matrix1; Matrix2x2 multiplication2 = matrix1 * 3; Matrix2x2 multiplication3(matrix1); multiplication3 *= 3; - test(multiplication1 == Matrix2x2(6, 9, 12, 15)); - test(multiplication2 == Matrix2x2(6, 9, 12, 15)); - test(multiplication3 == Matrix2x2(6, 9, 12, 15)); + rp3d_test(multiplication1 == Matrix2x2(6, 9, 12, 15)); + rp3d_test(multiplication2 == Matrix2x2(6, 9, 12, 15)); + rp3d_test(multiplication3 == Matrix2x2(6, 9, 12, 15)); // Test multiplication with a matrix Matrix2x2 multiplication4 = matrix1 * matrix2; Matrix2x2 multiplication5 = matrix2 * matrix1; - test(multiplication4 == Matrix2x2(-19, 36, -33, 62)); - test(multiplication5 == Matrix2x2(8, 9, 30, 35)); + rp3d_test(multiplication4 == Matrix2x2(-19, 36, -33, 62)); + rp3d_test(multiplication5 == Matrix2x2(8, 9, 30, 35)); // Test multiplication with a vector Vector2 vector1(3, -32); Vector2 vector2(-31, -422); Vector2 test1 = matrix1 * vector1; Vector2 test2 = matrix2 * vector2; - test(test1 == Vector2(-90, -148)); - test(test2 == Vector2(-1204, -4065)); + rp3d_test(test1 == Vector2(-90, -148)); + rp3d_test(test2 == Vector2(-1204, -4065)); // Test equality operators - test(Matrix2x2(34, 38, 43, 64) == + rp3d_test(Matrix2x2(34, 38, 43, 64) == Matrix2x2(34, 38, 43, 64)); - test(Matrix2x2(34, 64, 43, 7) != + rp3d_test(Matrix2x2(34, 64, 43, 7) != Matrix2x2(34, 38, 43, 64)); // Test operator to read a value - test(mMatrix1[0][0] == 2); - test(mMatrix1[0][1] == 24); - test(mMatrix1[1][0] == -4); - test(mMatrix1[1][1] == 5); + rp3d_test(mMatrix1[0][0] == 2); + rp3d_test(mMatrix1[0][1] == 24); + rp3d_test(mMatrix1[1][0] == -4); + rp3d_test(mMatrix1[1][1] == 5); // Test operator to set a value Matrix2x2 test3; @@ -241,7 +241,7 @@ class TestMatrix2x2 : public Test { test3[0][1] = 24; test3[1][0] = -4; test3[1][1] = 5; - test(test3 == mMatrix1); + rp3d_test(test3 == mMatrix1); } }; diff --git a/test/tests/mathematics/TestMatrix3x3.h b/test/tests/mathematics/TestMatrix3x3.h index 031ec012..c369bde9 100644 --- a/test/tests/mathematics/TestMatrix3x3.h +++ b/test/tests/mathematics/TestMatrix3x3.h @@ -77,27 +77,27 @@ class TestMatrix3x3 : public Test { Matrix3x3 test1(5.0); Matrix3x3 test2(2, 3, 4, 5, 6, 7, 8, 9, 10); Matrix3x3 test3(mMatrix1); - test(test1[0][0] == 5); - test(test1[0][1] == 5); - test(test1[0][2] == 5); - test(test1[1][0] == 5); - test(test1[1][1] == 5); - test(test1[1][2] == 5); - test(test1[2][0] == 5); - test(test1[2][1] == 5); - test(test1[2][2] == 5); + rp3d_test(test1[0][0] == 5); + rp3d_test(test1[0][1] == 5); + rp3d_test(test1[0][2] == 5); + rp3d_test(test1[1][0] == 5); + rp3d_test(test1[1][1] == 5); + rp3d_test(test1[1][2] == 5); + rp3d_test(test1[2][0] == 5); + rp3d_test(test1[2][1] == 5); + rp3d_test(test1[2][2] == 5); - test(test2[0][0] == 2); - test(test2[0][1] == 3); - test(test2[0][2] == 4); - test(test2[1][0] == 5); - test(test2[1][1] == 6); - test(test2[1][2] == 7); - test(test2[2][0] == 8); - test(test2[2][1] == 9); - test(test2[2][2] == 10); + rp3d_test(test2[0][0] == 2); + rp3d_test(test2[0][1] == 3); + rp3d_test(test2[0][2] == 4); + rp3d_test(test2[1][0] == 5); + rp3d_test(test2[1][1] == 6); + rp3d_test(test2[1][2] == 7); + rp3d_test(test2[2][0] == 8); + rp3d_test(test2[2][1] == 9); + rp3d_test(test2[2][2] == 10); - test(test3 == mMatrix1); + rp3d_test(test3 == mMatrix1); } /// Test the getter and setter methods @@ -106,27 +106,27 @@ class TestMatrix3x3 : public Test { // Test method to set all the values Matrix3x3 test2; test2.setAllValues(2, 24, 4, 5, -6, 234, -15, 11, 66); - test(test2 == mMatrix1); + rp3d_test(test2 == mMatrix1); // Test method to set to zero test2.setToZero(); - test(test2 == Matrix3x3(0, 0, 0, 0, 0, 0, 0, 0, 0)); + rp3d_test(test2 == Matrix3x3(0, 0, 0, 0, 0, 0, 0, 0, 0)); // Test method that returns a column Vector3 column1 = mMatrix1.getColumn(0); Vector3 column2 = mMatrix1.getColumn(1); Vector3 column3 = mMatrix1.getColumn(2); - test(column1 == Vector3(2, 5, -15)); - test(column2 == Vector3(24, -6, 11)); - test(column3 == Vector3(4, 234, 66)); + rp3d_test(column1 == Vector3(2, 5, -15)); + rp3d_test(column2 == Vector3(24, -6, 11)); + rp3d_test(column3 == Vector3(4, 234, 66)); // Test method that returns a row Vector3 row1 = mMatrix1.getRow(0); Vector3 row2 = mMatrix1.getRow(1); Vector3 row3 = mMatrix1.getRow(2); - test(row1 == Vector3(2, 24, 4)); - test(row2 == Vector3(5, -6, 234)); - test(row3 == Vector3(-15, 11, 66)); + rp3d_test(row1 == Vector3(2, 24, 4)); + rp3d_test(row2 == Vector3(5, -6, 234)); + rp3d_test(row3 == Vector3(-15, 11, 66)); } /// Test the identity methods @@ -136,17 +136,17 @@ class TestMatrix3x3 : public Test { Matrix3x3 test1; test1.setToIdentity(); - test(identity[0][0] == 1); - test(identity[0][1] == 0); - test(identity[0][2] == 0); - test(identity[1][0] == 0); - test(identity[1][1] == 1); - test(identity[1][2] == 0); - test(identity[2][0] == 0); - test(identity[2][1] == 0); - test(identity[2][2] == 1); + rp3d_test(identity[0][0] == 1); + rp3d_test(identity[0][1] == 0); + rp3d_test(identity[0][2] == 0); + rp3d_test(identity[1][0] == 0); + rp3d_test(identity[1][1] == 1); + rp3d_test(identity[1][2] == 0); + rp3d_test(identity[2][0] == 0); + rp3d_test(identity[2][1] == 0); + rp3d_test(identity[2][2] == 1); - test(test1 == Matrix3x3::identity()); + rp3d_test(test1 == Matrix3x3::identity()); } /// Test the zero method @@ -154,15 +154,15 @@ class TestMatrix3x3 : public Test { Matrix3x3 zero = Matrix3x3::zero(); - test(zero[0][0] == 0); - test(zero[0][1] == 0); - test(zero[0][2] == 0); - test(zero[1][0] == 0); - test(zero[1][1] == 0); - test(zero[1][2] == 0); - test(zero[2][0] == 0); - test(zero[2][1] == 0); - test(zero[2][2] == 0); + rp3d_test(zero[0][0] == 0); + rp3d_test(zero[0][1] == 0); + rp3d_test(zero[0][2] == 0); + rp3d_test(zero[1][0] == 0); + rp3d_test(zero[1][1] == 0); + rp3d_test(zero[1][2] == 0); + rp3d_test(zero[2][0] == 0); + rp3d_test(zero[2][1] == 0); + rp3d_test(zero[2][2] == 0); } /// Test others methods @@ -170,54 +170,54 @@ class TestMatrix3x3 : public Test { // Test transpose Matrix3x3 transpose = mMatrix1.getTranspose(); - test(transpose == Matrix3x3(2, 5, -15, 24, -6, 11, 4, 234, 66)); + rp3d_test(transpose == Matrix3x3(2, 5, -15, 24, -6, 11, 4, 234, 66)); // Test trace - test(mMatrix1.getTrace() == 62); - test(Matrix3x3::identity().getTrace() == 3); + rp3d_test(mMatrix1.getTrace() == 62); + rp3d_test(Matrix3x3::identity().getTrace() == 3); // Test determinant Matrix3x3 matrix(-24, 64, 253, -35, 52, 72, 21, -35, -363); - test(mMatrix1.getDeterminant() == -98240); - test(matrix.getDeterminant() == -290159); - test(mIdentity.getDeterminant() == 1); + rp3d_test(mMatrix1.getDeterminant() == -98240); + rp3d_test(matrix.getDeterminant() == -290159); + rp3d_test(mIdentity.getDeterminant() == 1); // Test inverse Matrix3x3 inverseMatrix = matrix.getInverse(); - test(approxEqual(inverseMatrix[0][0], decimal(0.056369), decimal(10e-6))); - test(approxEqual(inverseMatrix[0][1], decimal(-0.049549), decimal(10e-6))); - test(approxEqual(inverseMatrix[0][2], decimal(0.029460), decimal(10e-6))); - test(approxEqual(inverseMatrix[1][0], decimal(0.038575), decimal(10e-6))); - test(approxEqual(inverseMatrix[1][1], decimal(-0.011714), decimal(10e-6))); - test(approxEqual(inverseMatrix[1][2], decimal(0.024562), decimal(10e-6))); - test(approxEqual(inverseMatrix[2][0], decimal(-0.000458), decimal(10e-6))); - test(approxEqual(inverseMatrix[2][1], decimal(-0.001737), decimal(10e-6))); - test(approxEqual(inverseMatrix[2][2], decimal(-0.003419), decimal(10e-6))); + rp3d_test(approxEqual(inverseMatrix[0][0], decimal(0.056369), decimal(10e-6))); + rp3d_test(approxEqual(inverseMatrix[0][1], decimal(-0.049549), decimal(10e-6))); + rp3d_test(approxEqual(inverseMatrix[0][2], decimal(0.029460), decimal(10e-6))); + rp3d_test(approxEqual(inverseMatrix[1][0], decimal(0.038575), decimal(10e-6))); + rp3d_test(approxEqual(inverseMatrix[1][1], decimal(-0.011714), decimal(10e-6))); + rp3d_test(approxEqual(inverseMatrix[1][2], decimal(0.024562), decimal(10e-6))); + rp3d_test(approxEqual(inverseMatrix[2][0], decimal(-0.000458), decimal(10e-6))); + rp3d_test(approxEqual(inverseMatrix[2][1], decimal(-0.001737), decimal(10e-6))); + rp3d_test(approxEqual(inverseMatrix[2][2], decimal(-0.003419), decimal(10e-6))); Matrix3x3 inverseMatrix1 = mMatrix1.getInverse(); - test(approxEqual(inverseMatrix1[0][0], decimal(0.030232), decimal(10e-6))); - test(approxEqual(inverseMatrix1[0][1], decimal(0.015676), decimal(10e-6))); - test(approxEqual(inverseMatrix1[0][2], decimal(-0.057410), decimal(10e-6))); - test(approxEqual(inverseMatrix1[1][0], decimal(0.039088), decimal(10e-6))); - test(approxEqual(inverseMatrix1[1][1], decimal(-0.001954), decimal(10e-6))); - test(approxEqual(inverseMatrix1[1][2], decimal(0.004560), decimal(10e-6))); - test(approxEqual(inverseMatrix1[2][0], decimal(0.000356), decimal(10e-6))); - test(approxEqual(inverseMatrix1[2][1], decimal(0.003888), decimal(10e-6))); - test(approxEqual(inverseMatrix1[2][2], decimal(0.001344), decimal(10e-6))); + rp3d_test(approxEqual(inverseMatrix1[0][0], decimal(0.030232), decimal(10e-6))); + rp3d_test(approxEqual(inverseMatrix1[0][1], decimal(0.015676), decimal(10e-6))); + rp3d_test(approxEqual(inverseMatrix1[0][2], decimal(-0.057410), decimal(10e-6))); + rp3d_test(approxEqual(inverseMatrix1[1][0], decimal(0.039088), decimal(10e-6))); + rp3d_test(approxEqual(inverseMatrix1[1][1], decimal(-0.001954), decimal(10e-6))); + rp3d_test(approxEqual(inverseMatrix1[1][2], decimal(0.004560), decimal(10e-6))); + rp3d_test(approxEqual(inverseMatrix1[2][0], decimal(0.000356), decimal(10e-6))); + rp3d_test(approxEqual(inverseMatrix1[2][1], decimal(0.003888), decimal(10e-6))); + rp3d_test(approxEqual(inverseMatrix1[2][2], decimal(0.001344), decimal(10e-6))); // Test absolute matrix Matrix3x3 matrix2(-2, -3, -4, -5, -6, -7, -8, -9, -10); - test(matrix.getAbsoluteMatrix() == Matrix3x3(24, 64, 253, 35, 52, 72, 21, 35, 363)); + rp3d_test(matrix.getAbsoluteMatrix() == Matrix3x3(24, 64, 253, 35, 52, 72, 21, 35, 363)); Matrix3x3 absoluteMatrix = matrix2.getAbsoluteMatrix(); - test(absoluteMatrix == Matrix3x3(2, 3, 4, 5, 6, 7, 8, 9, 10)); + rp3d_test(absoluteMatrix == Matrix3x3(2, 3, 4, 5, 6, 7, 8, 9, 10)); // Test method that computes skew-symmetric matrix for cross product Vector3 vector1(3, -5, 6); Vector3 vector2(73, 42, 26); Matrix3x3 skewMatrix = Matrix3x3::computeSkewSymmetricMatrixForCrossProduct(vector1); - test(skewMatrix == Matrix3x3(0, -6, -5, 6, 0, -3, 5, 3, 0)); + rp3d_test(skewMatrix == Matrix3x3(0, -6, -5, 6, 0, -3, 5, 3, 0)); Vector3 crossProduct1 = vector1.cross(vector2); Vector3 crossProduct2 = skewMatrix * vector2; - test(crossProduct1 == crossProduct2); + rp3d_test(crossProduct1 == crossProduct2); } /// Test the operators @@ -229,59 +229,59 @@ class TestMatrix3x3 : public Test { Matrix3x3 addition1 = matrix1 + matrix2; Matrix3x3 addition2(matrix1); addition2 += matrix2; - test(addition1 == Matrix3x3(0, 6, -1, 15, 10, 14, 10, 14, 18)); - test(addition2 == Matrix3x3(0, 6, -1, 15, 10, 14, 10, 14, 18)); + rp3d_test(addition1 == Matrix3x3(0, 6, -1, 15, 10, 14, 10, 14, 18)); + rp3d_test(addition2 == Matrix3x3(0, 6, -1, 15, 10, 14, 10, 14, 18)); // Test substraction Matrix3x3 substraction1 = matrix1 - matrix2; Matrix3x3 substraction2(matrix1); substraction2 -= matrix2; - test(substraction1 == Matrix3x3(4, 0, 9, -5, 2, 0, 6, 4, 2)); - test(substraction2 == Matrix3x3(4, 0, 9, -5, 2, 0, 6, 4, 2)); + rp3d_test(substraction1 == Matrix3x3(4, 0, 9, -5, 2, 0, 6, 4, 2)); + rp3d_test(substraction2 == Matrix3x3(4, 0, 9, -5, 2, 0, 6, 4, 2)); // Test negative operator Matrix3x3 negative = -matrix1; - test(negative == Matrix3x3(-2, -3, -4, -5, -6, -7, -8, -9, -10)); + rp3d_test(negative == Matrix3x3(-2, -3, -4, -5, -6, -7, -8, -9, -10)); // Test multiplication with a number Matrix3x3 multiplication1 = 3 * matrix1; Matrix3x3 multiplication2 = matrix1 * 3; Matrix3x3 multiplication3(matrix1); multiplication3 *= 3; - test(multiplication1 == Matrix3x3(6, 9, 12, 15, 18, 21, 24, 27, 30)); - test(multiplication2 == Matrix3x3(6, 9, 12, 15, 18, 21, 24, 27, 30)); - test(multiplication3 == Matrix3x3(6, 9, 12, 15, 18, 21, 24, 27, 30)); + rp3d_test(multiplication1 == Matrix3x3(6, 9, 12, 15, 18, 21, 24, 27, 30)); + rp3d_test(multiplication2 == Matrix3x3(6, 9, 12, 15, 18, 21, 24, 27, 30)); + rp3d_test(multiplication3 == Matrix3x3(6, 9, 12, 15, 18, 21, 24, 27, 30)); // Test multiplication with a matrix Matrix3x3 multiplication4 = matrix1 * matrix2; Matrix3x3 multiplication5 = matrix2 * matrix1; - test(multiplication4 == Matrix3x3(34, 38, 43, 64, 74, 73, 94, 110, 103)); - test(multiplication5 == Matrix3x3(-29, -33, -37, 96, 117, 138, 93, 108, 123)); + rp3d_test(multiplication4 == Matrix3x3(34, 38, 43, 64, 74, 73, 94, 110, 103)); + rp3d_test(multiplication5 == Matrix3x3(-29, -33, -37, 96, 117, 138, 93, 108, 123)); // Test multiplication with a vector Vector3 vector1(3, -32, 59); Vector3 vector2(-31, -422, 34); Vector3 test1 = matrix1 * vector1; Vector3 test2 = matrix2 * vector2; - test(test1 == Vector3(146, 236, 326)); - test(test2 == Vector3(-1374, -1760, -1900)); + rp3d_test(test1 == Vector3(146, 236, 326)); + rp3d_test(test2 == Vector3(-1374, -1760, -1900)); // Test equality operators - test(Matrix3x3(34, 38, 43, 64, 74, 73, 94, 110, 103) == + rp3d_test(Matrix3x3(34, 38, 43, 64, 74, 73, 94, 110, 103) == Matrix3x3(34, 38, 43, 64, 74, 73, 94, 110, 103)); - test(Matrix3x3(34, 64, 43, 7, -1, 73, 94, 110, 103) != + rp3d_test(Matrix3x3(34, 64, 43, 7, -1, 73, 94, 110, 103) != Matrix3x3(34, 38, 43, 64, 74, 73, 94, 110, 103)); // Test operator to read a value - test(mMatrix1[0][0] == 2); - test(mMatrix1[0][1] == 24); - test(mMatrix1[0][2] == 4); - test(mMatrix1[1][0] == 5); - test(mMatrix1[1][1] == -6); - test(mMatrix1[1][2] == 234); - test(mMatrix1[2][0] == -15); - test(mMatrix1[2][1] == 11); - test(mMatrix1[2][2] == 66); + rp3d_test(mMatrix1[0][0] == 2); + rp3d_test(mMatrix1[0][1] == 24); + rp3d_test(mMatrix1[0][2] == 4); + rp3d_test(mMatrix1[1][0] == 5); + rp3d_test(mMatrix1[1][1] == -6); + rp3d_test(mMatrix1[1][2] == 234); + rp3d_test(mMatrix1[2][0] == -15); + rp3d_test(mMatrix1[2][1] == 11); + rp3d_test(mMatrix1[2][2] == 66); // Test operator to set a value Matrix3x3 test3; @@ -294,7 +294,7 @@ class TestMatrix3x3 : public Test { test3[2][0] = -15; test3[2][1] = 11; test3[2][2] = 66; - test(test3 == mMatrix1); + rp3d_test(test3 == mMatrix1); } }; diff --git a/test/tests/mathematics/TestQuaternion.h b/test/tests/mathematics/TestQuaternion.h index dfc65955..f15c9f72 100644 --- a/test/tests/mathematics/TestQuaternion.h +++ b/test/tests/mathematics/TestQuaternion.h @@ -76,19 +76,19 @@ class TestQuaternion : public Test { void testConstructors() { Quaternion quaternion1(mQuaternion1); - test(mQuaternion1 == quaternion1); + rp3d_test(mQuaternion1 == quaternion1); Quaternion quaternion2(4, 5, 6, 7); - test(quaternion2 == Quaternion(4, 5, 6, 7)); + rp3d_test(quaternion2 == Quaternion(4, 5, 6, 7)); Quaternion quaternion3(8, Vector3(3, 5, 2)); - test(quaternion3 == Quaternion(3, 5, 2, 8)); + rp3d_test(quaternion3 == Quaternion(3, 5, 2, 8)); Quaternion quaternion4(mQuaternion1.getMatrix()); - test(approxEqual(quaternion4.x, mQuaternion1.x)); - test(approxEqual(quaternion4.y, mQuaternion1.y)); - test(approxEqual(quaternion4.z, mQuaternion1.z)); - test(approxEqual(quaternion4.w, mQuaternion1.w)); + rp3d_test(approxEqual(quaternion4.x, mQuaternion1.x)); + rp3d_test(approxEqual(quaternion4.y, mQuaternion1.y)); + rp3d_test(approxEqual(quaternion4.z, mQuaternion1.z)); + rp3d_test(approxEqual(quaternion4.w, mQuaternion1.w)); // Test conversion from Euler angles to quaternion @@ -97,26 +97,26 @@ class TestQuaternion : public Test { Quaternion quaternion5 = Quaternion::fromEulerAngles(PI_OVER_2, 0, 0); Quaternion quaternionTest5(std::sin(PI_OVER_4), 0, 0, std::cos(PI_OVER_4)); quaternionTest5.normalize(); - test(approxEqual(quaternion5.x, quaternionTest5.x)); - test(approxEqual(quaternion5.y, quaternionTest5.y)); - test(approxEqual(quaternion5.z, quaternionTest5.z)); - test(approxEqual(quaternion5.w, quaternionTest5.w)); + rp3d_test(approxEqual(quaternion5.x, quaternionTest5.x)); + rp3d_test(approxEqual(quaternion5.y, quaternionTest5.y)); + rp3d_test(approxEqual(quaternion5.z, quaternionTest5.z)); + rp3d_test(approxEqual(quaternion5.w, quaternionTest5.w)); Quaternion quaternion6 = Quaternion::fromEulerAngles(0, PI_OVER_2, 0); Quaternion quaternionTest6(0, std::sin(PI_OVER_4), 0, std::cos(PI_OVER_4)); quaternionTest6.normalize(); - test(approxEqual(quaternion6.x, quaternionTest6.x)); - test(approxEqual(quaternion6.y, quaternionTest6.y)); - test(approxEqual(quaternion6.z, quaternionTest6.z)); - test(approxEqual(quaternion6.w, quaternionTest6.w)); + rp3d_test(approxEqual(quaternion6.x, quaternionTest6.x)); + rp3d_test(approxEqual(quaternion6.y, quaternionTest6.y)); + rp3d_test(approxEqual(quaternion6.z, quaternionTest6.z)); + rp3d_test(approxEqual(quaternion6.w, quaternionTest6.w)); Quaternion quaternion7 = Quaternion::fromEulerAngles(Vector3(0, 0, PI_OVER_2)); Quaternion quaternionTest7(0, 0, std::sin(PI_OVER_4), std::cos(PI_OVER_4)); quaternionTest7.normalize(); - test(approxEqual(quaternion7.x, quaternionTest7.x)); - test(approxEqual(quaternion7.y, quaternionTest7.y)); - test(approxEqual(quaternion7.z, quaternionTest7.z)); - test(approxEqual(quaternion7.w, quaternionTest7.w)); + rp3d_test(approxEqual(quaternion7.x, quaternionTest7.x)); + rp3d_test(approxEqual(quaternion7.y, quaternionTest7.y)); + rp3d_test(approxEqual(quaternion7.z, quaternionTest7.z)); + rp3d_test(approxEqual(quaternion7.w, quaternionTest7.w)); } /// Test unit, length, normalize methods @@ -124,15 +124,15 @@ class TestQuaternion : public Test { // Test method that returns the length Quaternion quaternion(2, 3, -4, 5); - test(approxEqual(quaternion.length(), std::sqrt(decimal(54.0)))); + rp3d_test(approxEqual(quaternion.length(), std::sqrt(decimal(54.0)))); // Test method that returns a unit quaternion - test(approxEqual(quaternion.getUnit().length(), 1.0)); + rp3d_test(approxEqual(quaternion.getUnit().length(), 1.0)); // Test the normalization method Quaternion quaternion2(4, 5, 6, 7); quaternion2.normalize(); - test(approxEqual(quaternion2.length(), 1.0)); + rp3d_test(approxEqual(quaternion2.length(), 1.0)); } /// Test others methods @@ -141,80 +141,80 @@ class TestQuaternion : public Test { // Test the method to set the values Quaternion quaternion; quaternion.setAllValues(1, 2, 3, 4); - test(quaternion == Quaternion(1, 2, 3, 4)); + rp3d_test(quaternion == Quaternion(1, 2, 3, 4)); // Test the method to set the quaternion to zero quaternion.setToZero(); - test(quaternion == Quaternion(0, 0, 0, 0)); + rp3d_test(quaternion == Quaternion(0, 0, 0, 0)); // Tes the methods to get or set to identity Quaternion identity1(1, 2, 3, 4); identity1.setToIdentity(); - test(identity1 == Quaternion(0, 0, 0, 1)); - test(Quaternion::identity() == Quaternion(0, 0, 0, 1)); + rp3d_test(identity1 == Quaternion(0, 0, 0, 1)); + rp3d_test(Quaternion::identity() == Quaternion(0, 0, 0, 1)); // Test the method to get the vector (x, y, z) Vector3 v = mQuaternion1.getVectorV(); - test(v.x == mQuaternion1.x); - test(v.y == mQuaternion1.y); - test(v.z == mQuaternion1.z); + rp3d_test(v.x == mQuaternion1.x); + rp3d_test(v.y == mQuaternion1.y); + rp3d_test(v.z == mQuaternion1.z); // Test the conjugate method Quaternion conjugate = mQuaternion1.getConjugate(); - test(conjugate.x == -mQuaternion1.x); - test(conjugate.y == -mQuaternion1.y); - test(conjugate.z == -mQuaternion1.z); - test(conjugate.w == mQuaternion1.w); + rp3d_test(conjugate.x == -mQuaternion1.x); + rp3d_test(conjugate.y == -mQuaternion1.y); + rp3d_test(conjugate.z == -mQuaternion1.z); + rp3d_test(conjugate.w == mQuaternion1.w); // Test the inverse methods Quaternion inverse1 = mQuaternion1.getInverse(); Quaternion inverse2(mQuaternion1); inverse2.inverse(); - test(inverse2 == inverse1); + rp3d_test(inverse2 == inverse1); Quaternion product = mQuaternion1 * inverse1; - test(approxEqual(product.x, mIdentity.x, decimal(10e-6))); - test(approxEqual(product.y, mIdentity.y, decimal(10e-6))); - test(approxEqual(product.z, mIdentity.z, decimal(10e-6))); - test(approxEqual(product.w, mIdentity.w, decimal(10e-6))); + rp3d_test(approxEqual(product.x, mIdentity.x, decimal(10e-6))); + rp3d_test(approxEqual(product.y, mIdentity.y, decimal(10e-6))); + rp3d_test(approxEqual(product.z, mIdentity.z, decimal(10e-6))); + rp3d_test(approxEqual(product.w, mIdentity.w, decimal(10e-6))); // Test the dot product Quaternion quaternion1(2, 3, 4, 5); Quaternion quaternion2(6, 7, 8, 9); decimal dotProduct = quaternion1.dot(quaternion2); - test(dotProduct == 110); + rp3d_test(dotProduct == 110); // Test the method that returns the rotation angle and axis Vector3 axis; decimal angle; Vector3 originalAxis = Vector3(2, 3, 4).getUnit(); mQuaternion1.getRotationAngleAxis(angle, axis); - test(approxEqual(axis.x, originalAxis.x)); - test(approxEqual(angle, decimal(PI/4.0), decimal(10e-6))); + rp3d_test(approxEqual(axis.x, originalAxis.x)); + rp3d_test(approxEqual(angle, decimal(PI/4.0), decimal(10e-6))); // Test the method that returns the corresponding matrix Matrix3x3 matrix = mQuaternion1.getMatrix(); Vector3 vector(56, -2, 82); Vector3 vector1 = matrix * vector; Vector3 vector2 = mQuaternion1 * vector; - test(approxEqual(vector1.x, vector2.x, decimal(10e-6))); - test(approxEqual(vector1.y, vector2.y, decimal(10e-6))); - test(approxEqual(vector1.z, vector2.z, decimal(10e-6))); + rp3d_test(approxEqual(vector1.x, vector2.x, decimal(10e-6))); + rp3d_test(approxEqual(vector1.y, vector2.y, decimal(10e-6))); + rp3d_test(approxEqual(vector1.z, vector2.z, decimal(10e-6))); // Test slerp method Quaternion quatStart = quaternion1.getUnit(); Quaternion quatEnd = quaternion2.getUnit(); Quaternion test1 = Quaternion::slerp(quatStart, quatEnd, 0.0); Quaternion test2 = Quaternion::slerp(quatStart, quatEnd, 1.0); - test(test1 == quatStart); - test(test2 == quatEnd); + rp3d_test(test1 == quatStart); + rp3d_test(test2 == quatEnd); decimal sinA = sin(decimal(PI/4.0)); decimal cosA = cos(decimal(PI/4.0)); Quaternion quat(sinA, 0, 0, cosA); Quaternion test3 = Quaternion::slerp(mIdentity, quat, decimal(0.5)); - test(approxEqual(test3.x, sin(decimal(PI/8.0)))); - test(approxEqual(test3.y, 0.0)); - test(approxEqual(test3.z, 0.0)); - test(approxEqual(test3.w, cos(decimal(PI/8.0)), decimal(10e-6))); + rp3d_test(approxEqual(test3.x, sin(decimal(PI/8.0)))); + rp3d_test(approxEqual(test3.y, 0.0)); + rp3d_test(approxEqual(test3.z, 0.0)); + rp3d_test(approxEqual(test3.w, cos(decimal(PI/8.0)), decimal(10e-6))); } /// Test overloaded operators @@ -226,43 +226,43 @@ class TestQuaternion : public Test { Quaternion test1 = quat1 + quat2; Quaternion test11(-6, 52, 2, 8); test11 += quat1; - test(test1 == Quaternion(2, 12, 10, 13)); - test(test11 == Quaternion(-2, 57, 4, 18)); + rp3d_test(test1 == Quaternion(2, 12, 10, 13)); + rp3d_test(test11 == Quaternion(-2, 57, 4, 18)); // Test substraction Quaternion test2 = quat1 - quat2; Quaternion test22(-73, 62, 25, 9); test22 -= quat1; - test(test2 == Quaternion(6, -2, -6, 7)); - test(test22 == Quaternion(-77, 57, 23, -1)); + rp3d_test(test2 == Quaternion(6, -2, -6, 7)); + rp3d_test(test22 == Quaternion(-77, 57, 23, -1)); // Test multiplication with a number Quaternion test3 = quat1 * 3.0; - test(test3 == Quaternion(12, 15, 6, 30)); + rp3d_test(test3 == Quaternion(12, 15, 6, 30)); // Test multiplication between two quaternions Quaternion test4 = quat1 * quat2; Quaternion test5 = mQuaternion1 * mIdentity; - test(test4 == Quaternion(18, 49, 124, -13)); - test(test5 == mQuaternion1); + rp3d_test(test4 == Quaternion(18, 49, 124, -13)); + rp3d_test(test5 == mQuaternion1); // Test multiplication between a quaternion and a point Vector3 point(5, -24, 563); Vector3 vector1 = mIdentity * point; Vector3 vector2 = mQuaternion1 * point; Vector3 testVector2 = mQuaternion1.getMatrix() * point; - test(vector1 == point); - test(approxEqual(vector2.x, testVector2.x, decimal(10e-5))); - test(approxEqual(vector2.y, testVector2.y, decimal(10e-5))); - test(approxEqual(vector2.z, testVector2.z, decimal(10e-5))); + rp3d_test(vector1 == point); + rp3d_test(approxEqual(vector2.x, testVector2.x, decimal(10e-5))); + rp3d_test(approxEqual(vector2.y, testVector2.y, decimal(10e-5))); + rp3d_test(approxEqual(vector2.z, testVector2.z, decimal(10e-5))); // Test assignment operator Quaternion quaternion; quaternion = mQuaternion1; - test(quaternion == mQuaternion1); + rp3d_test(quaternion == mQuaternion1); // Test equality operator - test(mQuaternion1 == mQuaternion1); + rp3d_test(mQuaternion1 == mQuaternion1); } }; diff --git a/test/tests/mathematics/TestTransform.h b/test/tests/mathematics/TestTransform.h index 67fcfc94..e9eef1c6 100644 --- a/test/tests/mathematics/TestTransform.h +++ b/test/tests/mathematics/TestTransform.h @@ -90,25 +90,25 @@ class TestTransform : public Test { Transform transform1(Vector3(1, 2, 3), Quaternion(6, 7, 8, 9)); Transform transform2(Vector3(4, 5, 6), Matrix3x3(1, 0, 0, 0, 1, 0, 0, 0, 1)); Transform transform3(transform1); - test(transform1.getPosition() == Vector3(1, 2, 3)); - test(transform1.getOrientation() == Quaternion(6, 7, 8, 9)); - test(transform2.getPosition() == Vector3(4, 5, 6)); - test(transform2.getOrientation() == Quaternion::identity()); - test(transform3 == transform1); + rp3d_test(transform1.getPosition() == Vector3(1, 2, 3)); + rp3d_test(transform1.getOrientation() == Quaternion(6, 7, 8, 9)); + rp3d_test(transform2.getPosition() == Vector3(4, 5, 6)); + rp3d_test(transform2.getOrientation() == Quaternion::identity()); + rp3d_test(transform3 == transform1); } /// Test getter and setter void testGetSet() { - test(mIdentityTransform.getPosition() == Vector3(0, 0, 0)); - test(mIdentityTransform.getOrientation() == Quaternion::identity()); + rp3d_test(mIdentityTransform.getPosition() == Vector3(0, 0, 0)); + rp3d_test(mIdentityTransform.getOrientation() == Quaternion::identity()); Transform transform; transform.setPosition(Vector3(5, 7, 8)); transform.setOrientation(Quaternion(1, 2, 3, 1)); - test(transform.getPosition() == Vector3(5, 7, 8)); - test(transform.getOrientation() == Quaternion(1, 2, 3, 1)); + rp3d_test(transform.getPosition() == Vector3(5, 7, 8)); + rp3d_test(transform.getOrientation() == Quaternion(1, 2, 3, 1)); transform.setToIdentity(); - test(transform.getPosition() == Vector3(0, 0, 0)); - test(transform.getOrientation() == Quaternion::identity()); + rp3d_test(transform.getPosition() == Vector3(0, 0, 0)); + rp3d_test(transform.getOrientation() == Quaternion::identity()); } /// Test the inverse @@ -117,9 +117,9 @@ class TestTransform : public Test { Vector3 vector(2, 3, 4); Vector3 tempVector = mTransform1 * vector; Vector3 tempVector2 = inverseTransform * tempVector; - test(approxEqual(tempVector2.x, vector.x, decimal(10e-6))); - test(approxEqual(tempVector2.y, vector.y, decimal(10e-6))); - test(approxEqual(tempVector2.z, vector.z, decimal(10e-6))); + rp3d_test(approxEqual(tempVector2.x, vector.x, decimal(10e-6))); + rp3d_test(approxEqual(tempVector2.y, vector.y, decimal(10e-6))); + rp3d_test(approxEqual(tempVector2.z, vector.z, decimal(10e-6))); } /// Test methods to set and get transform matrix from and to OpenGL @@ -137,30 +137,30 @@ class TestTransform : public Test { transform.setFromOpenGL(openglMatrix); decimal openglMatrix2[16]; transform.getOpenGLMatrix(openglMatrix2); - test(approxEqual(openglMatrix2[0], orientation[0][0])); - test(approxEqual(openglMatrix2[1], orientation[1][0])); - test(approxEqual(openglMatrix2[2], orientation[2][0])); - test(approxEqual(openglMatrix2[3], 0)); - test(approxEqual(openglMatrix2[4], orientation[0][1])); - test(approxEqual(openglMatrix2[5], orientation[1][1])); - test(approxEqual(openglMatrix2[6], orientation[2][1])); - test(approxEqual(openglMatrix2[7], 0)); - test(approxEqual(openglMatrix2[8], orientation[0][2])); - test(approxEqual(openglMatrix2[9], orientation[1][2])); - test(approxEqual(openglMatrix2[10], orientation[2][2])); - test(approxEqual(openglMatrix2[11], 0)); - test(approxEqual(openglMatrix2[12], position.x)); - test(approxEqual(openglMatrix2[13], position.y)); - test(approxEqual(openglMatrix2[14], position.z)); - test(approxEqual(openglMatrix2[15], 1)); + rp3d_test(approxEqual(openglMatrix2[0], orientation[0][0])); + rp3d_test(approxEqual(openglMatrix2[1], orientation[1][0])); + rp3d_test(approxEqual(openglMatrix2[2], orientation[2][0])); + rp3d_test(approxEqual(openglMatrix2[3], 0)); + rp3d_test(approxEqual(openglMatrix2[4], orientation[0][1])); + rp3d_test(approxEqual(openglMatrix2[5], orientation[1][1])); + rp3d_test(approxEqual(openglMatrix2[6], orientation[2][1])); + rp3d_test(approxEqual(openglMatrix2[7], 0)); + rp3d_test(approxEqual(openglMatrix2[8], orientation[0][2])); + rp3d_test(approxEqual(openglMatrix2[9], orientation[1][2])); + rp3d_test(approxEqual(openglMatrix2[10], orientation[2][2])); + rp3d_test(approxEqual(openglMatrix2[11], 0)); + rp3d_test(approxEqual(openglMatrix2[12], position.x)); + rp3d_test(approxEqual(openglMatrix2[13], position.y)); + rp3d_test(approxEqual(openglMatrix2[14], position.z)); + rp3d_test(approxEqual(openglMatrix2[15], 1)); } /// Test the method to interpolate transforms void testInterpolateTransform() { Transform transformStart = Transform::interpolateTransforms(mTransform1, mTransform2,0); Transform transformEnd = Transform::interpolateTransforms(mTransform1, mTransform2,1); - test(transformStart == mTransform1); - test(transformEnd == mTransform2); + rp3d_test(transformStart == mTransform1); + rp3d_test(transformEnd == mTransform2); decimal sinA = sin(PI/3.0f); decimal cosA = cos(PI/3.0f); @@ -171,46 +171,46 @@ class TestTransform : public Test { Transform transform = Transform::interpolateTransforms(transform1, transform2, 0.5); Vector3 position = transform.getPosition(); Quaternion orientation = transform.getOrientation(); - test(approxEqual(position.x, 6)); - test(approxEqual(position.y, 8)); - test(approxEqual(position.z, 11)); - test(approxEqual(orientation.x, sinB)); - test(approxEqual(orientation.y, sinB)); - test(approxEqual(orientation.z, sinB)); - test(approxEqual(orientation.w, cosB)); + rp3d_test(approxEqual(position.x, 6)); + rp3d_test(approxEqual(position.y, 8)); + rp3d_test(approxEqual(position.z, 11)); + rp3d_test(approxEqual(orientation.x, sinB)); + rp3d_test(approxEqual(orientation.y, sinB)); + rp3d_test(approxEqual(orientation.z, sinB)); + rp3d_test(approxEqual(orientation.w, cosB)); } /// Test the identity methods void testIdentity() { Transform transform = Transform::identity(); - test(transform.getPosition() == Vector3(0, 0, 0)); - test(transform.getOrientation() == Quaternion::identity()); + rp3d_test(transform.getPosition() == Vector3(0, 0, 0)); + rp3d_test(transform.getOrientation() == Quaternion::identity()); Transform transform2(Vector3(5, 6, 2), Quaternion(3, 5, 1, 6)); transform2.setToIdentity(); - test(transform2.getPosition() == Vector3(0, 0, 0)); - test(transform2.getOrientation() == Quaternion::identity()); + rp3d_test(transform2.getPosition() == Vector3(0, 0, 0)); + rp3d_test(transform2.getOrientation() == Quaternion::identity()); } /// Test the overloaded operators void testOperators() { // Equality, inequality operator - test(mTransform1 == mTransform1); - test(mTransform1 != mTransform2); + rp3d_test(mTransform1 == mTransform1); + rp3d_test(mTransform1 != mTransform2); // Assignment operator Transform transform; transform = mTransform1; - test(transform == mTransform1); + rp3d_test(transform == mTransform1); // Multiplication Vector3 vector(7, 53, 5); Vector3 vector2 = mTransform2 * (mTransform1 * vector); Vector3 vector3 = (mTransform2 * mTransform1) * vector; - test(approxEqual(vector2.x, vector3.x, decimal(10e-6))); - test(approxEqual(vector2.y, vector3.y, decimal(10e-6))); - test(approxEqual(vector2.z, vector3.z, decimal(10e-6))); + rp3d_test(approxEqual(vector2.x, vector3.x, decimal(10e-6))); + rp3d_test(approxEqual(vector2.y, vector3.y, decimal(10e-6))); + rp3d_test(approxEqual(vector2.z, vector3.z, decimal(10e-6))); } }; diff --git a/test/tests/mathematics/TestVector2.h b/test/tests/mathematics/TestVector2.h index 08452266..e3f1d892 100644 --- a/test/tests/mathematics/TestVector2.h +++ b/test/tests/mathematics/TestVector2.h @@ -69,46 +69,46 @@ class TestVector2 : public Test { void testConstructors() { // Test constructor - test(mVectorZero.x == 0.0); - test(mVectorZero.y == 0.0); - test(mVector34.x == 3.0); - test(mVector34.y == 4.0); + rp3d_test(mVectorZero.x == 0.0); + rp3d_test(mVectorZero.y == 0.0); + rp3d_test(mVector34.x == 3.0); + rp3d_test(mVector34.y == 4.0); // Test copy-constructor Vector2 newVector(mVector34); - test(newVector.x == 3.0); - test(newVector.y == 4.0); + rp3d_test(newVector.x == 3.0); + rp3d_test(newVector.y == 4.0); // Test method to set values Vector2 newVector2; newVector2.setAllValues(decimal(6.1), decimal(7.2)); - test(approxEqual(newVector2.x, decimal(6.1))); - test(approxEqual(newVector2.y, decimal(7.2))); + rp3d_test(approxEqual(newVector2.x, decimal(6.1))); + rp3d_test(approxEqual(newVector2.y, decimal(7.2))); // Test method to set to zero newVector2.setToZero(); - test(newVector2 == Vector2(0, 0)); + rp3d_test(newVector2 == Vector2(0, 0)); } /// Test the length, unit vector and normalize methods void testLengthMethods() { // Test length methods - test(mVectorZero.length() == 0.0); - test(mVectorZero.lengthSquare() == 0.0); - test(Vector2(1, 0).length() == 1.0); - test(Vector2(0, 1).length() == 1.0); - test(mVector34.lengthSquare() == 25.0); + rp3d_test(mVectorZero.length() == 0.0); + rp3d_test(mVectorZero.lengthSquare() == 0.0); + rp3d_test(Vector2(1, 0).length() == 1.0); + rp3d_test(Vector2(0, 1).length() == 1.0); + rp3d_test(mVector34.lengthSquare() == 25.0); // Test unit vector methods - test(Vector2(1, 0).isUnit()); - test(Vector2(0, 1).isUnit()); - test(!mVector34.isUnit()); - test(Vector2(5, 0).getUnit() == Vector2(1, 0)); - test(Vector2(0, 5).getUnit() == Vector2(0, 1)); + rp3d_test(Vector2(1, 0).isUnit()); + rp3d_test(Vector2(0, 1).isUnit()); + rp3d_test(!mVector34.isUnit()); + rp3d_test(Vector2(5, 0).getUnit() == Vector2(1, 0)); + rp3d_test(Vector2(0, 5).getUnit() == Vector2(0, 1)); - test(!mVector34.isZero()); - test(mVectorZero.isZero()); + rp3d_test(!mVector34.isZero()); + rp3d_test(mVectorZero.isZero()); // Test normalization method Vector2 mVector10(1, 0); @@ -119,100 +119,100 @@ class TestVector2 : public Test { mVector01.normalize(); mVector50.normalize(); mVector05.normalize(); - test(mVector10 == Vector2(1, 0)); - test(mVector01 == Vector2(0, 1)); - test(mVector50 == Vector2(1, 0)); - test(mVector05 == Vector2(0, 1)); + rp3d_test(mVector10 == Vector2(1, 0)); + rp3d_test(mVector01 == Vector2(0, 1)); + rp3d_test(mVector50 == Vector2(1, 0)); + rp3d_test(mVector05 == Vector2(0, 1)); } /// Test the dot product void testDotProduct() { // Test the dot product - test(Vector2(5, 0).dot(Vector2(0, 8)) == 0); - test(Vector2(5, 8).dot(Vector2(0, 0)) == 0); - test(Vector2(12, 45).dot(Vector2(0, 0)) == 0); - test(Vector2(5, 7).dot(Vector2(5, 7)) == 74); - test(Vector2(3, 6).dot(Vector2(-3, -6)) == -45); - test(Vector2(2, 3).dot(Vector2(-7, 4)) == -2); - test(Vector2(4, 3).dot(Vector2(8, 9)) == 59); + rp3d_test(Vector2(5, 0).dot(Vector2(0, 8)) == 0); + rp3d_test(Vector2(5, 8).dot(Vector2(0, 0)) == 0); + rp3d_test(Vector2(12, 45).dot(Vector2(0, 0)) == 0); + rp3d_test(Vector2(5, 7).dot(Vector2(5, 7)) == 74); + rp3d_test(Vector2(3, 6).dot(Vector2(-3, -6)) == -45); + rp3d_test(Vector2(2, 3).dot(Vector2(-7, 4)) == -2); + rp3d_test(Vector2(4, 3).dot(Vector2(8, 9)) == 59); } /// Test others methods void testOthersMethods() { // Test the method that returns the absolute vector - test(Vector2(4, 5).getAbsoluteVector() == Vector2(4, 5)); - test(Vector2(-7, -24).getAbsoluteVector() == Vector2(7, 24)); + rp3d_test(Vector2(4, 5).getAbsoluteVector() == Vector2(4, 5)); + rp3d_test(Vector2(-7, -24).getAbsoluteVector() == Vector2(7, 24)); // Test the method that returns the minimal element - test(Vector2(6, 35).getMinAxis() == 0); - test(Vector2(564, 45).getMinAxis() == 1); - test(Vector2(98, 23).getMinAxis() == 1); - test(Vector2(-53, -25).getMinAxis() == 0); + rp3d_test(Vector2(6, 35).getMinAxis() == 0); + rp3d_test(Vector2(564, 45).getMinAxis() == 1); + rp3d_test(Vector2(98, 23).getMinAxis() == 1); + rp3d_test(Vector2(-53, -25).getMinAxis() == 0); // Test the method that returns the maximal element - test(Vector2(6, 35).getMaxAxis() == 1); - test(Vector2(7, 537).getMaxAxis() == 1); - test(Vector2(98, 23).getMaxAxis() == 0); - test(Vector2(-53, -25).getMaxAxis() == 1); + rp3d_test(Vector2(6, 35).getMaxAxis() == 1); + rp3d_test(Vector2(7, 537).getMaxAxis() == 1); + rp3d_test(Vector2(98, 23).getMaxAxis() == 0); + rp3d_test(Vector2(-53, -25).getMaxAxis() == 1); // Test the methot that return a max/min vector Vector2 vec1(-5, 4); Vector2 vec2(-8, 6); - test(Vector2::min(vec1, vec2) == Vector2(-8, 4)); - test(Vector2::max(vec1, vec2) == Vector2(-5, 6)); + rp3d_test(Vector2::min(vec1, vec2) == Vector2(-8, 4)); + rp3d_test(Vector2::max(vec1, vec2) == Vector2(-5, 6)); } /// Test the operators void testOperators() { // Test the [] operator - test(mVector34[0] == 3); - test(mVector34[1] == 4); + rp3d_test(mVector34[0] == 3); + rp3d_test(mVector34[1] == 4); // Assignment operator Vector2 newVector(6, 4); newVector = Vector2(7, 8); - test(newVector == Vector2(7, 8)); + rp3d_test(newVector == Vector2(7, 8)); // Equality, inequality operators - test(Vector2(5, 7) == Vector2(5, 7)); - test(Vector2(63, 64) != Vector2(63, 84)); - test(Vector2(63, 64) != Vector2(12, 64)); + rp3d_test(Vector2(5, 7) == Vector2(5, 7)); + rp3d_test(Vector2(63, 64) != Vector2(63, 84)); + rp3d_test(Vector2(63, 64) != Vector2(12, 64)); // Addition, substraction Vector2 vector1(6, 33); Vector2 vector2(7, 68); - test(Vector2(63, 24) + Vector2(3, 4) == Vector2(66, 28)); - test(Vector2(63, 24) - Vector2(3, 4) == Vector2(60, 20)); + rp3d_test(Vector2(63, 24) + Vector2(3, 4) == Vector2(66, 28)); + rp3d_test(Vector2(63, 24) - Vector2(3, 4) == Vector2(60, 20)); vector1 += Vector2(5, 10); vector2 -= Vector2(10, 21); - test(vector1 == Vector2(11, 43)); - test(vector2 == Vector2(-3, 47)); + rp3d_test(vector1 == Vector2(11, 43)); + rp3d_test(vector2 == Vector2(-3, 47)); // Multiplication, division Vector2 vector3(6, 33); Vector2 vector4(15, 60); - test(Vector2(63, 24) * 3 == Vector2(189, 72)); - test(3 * Vector2(63, 24) == Vector2(189, 72)); - test(Vector2(14, 8) / 2 == Vector2(7, 4)); + rp3d_test(Vector2(63, 24) * 3 == Vector2(189, 72)); + rp3d_test(3 * Vector2(63, 24) == Vector2(189, 72)); + rp3d_test(Vector2(14, 8) / 2 == Vector2(7, 4)); vector3 *= 10; vector4 /= 3; - test(vector3 == Vector2(60, 330)); - test(vector4 == Vector2(5, 20)); + rp3d_test(vector3 == Vector2(60, 330)); + rp3d_test(vector4 == Vector2(5, 20)); Vector2 vector5(21, 80); Vector2 vector6(7, 10); Vector2 vector7 = vector5 * vector6; - test(vector7 == Vector2(147, 800)); + rp3d_test(vector7 == Vector2(147, 800)); Vector2 vector8 = vector5 / vector6; - test(approxEqual(vector8.x, 3)); - test(approxEqual(vector8.y, 8)); + rp3d_test(approxEqual(vector8.x, 3)); + rp3d_test(approxEqual(vector8.y, 8)); // Negative operator Vector2 vector9(-34, 5); Vector2 negative = -vector9; - test(negative == Vector2(34, -5)); + rp3d_test(negative == Vector2(34, -5)); } }; diff --git a/test/tests/mathematics/TestVector3.h b/test/tests/mathematics/TestVector3.h index 6ba1c7c1..76d64564 100644 --- a/test/tests/mathematics/TestVector3.h +++ b/test/tests/mathematics/TestVector3.h @@ -69,53 +69,53 @@ class TestVector3 : public Test { void testConstructors() { // Test constructor - test(mVectorZero.x == 0.0); - test(mVectorZero.y == 0.0); - test(mVectorZero.z == 0.0); - test(mVector345.x == 3.0); - test(mVector345.y == 4.0); - test(mVector345.z == 5.0); + rp3d_test(mVectorZero.x == 0.0); + rp3d_test(mVectorZero.y == 0.0); + rp3d_test(mVectorZero.z == 0.0); + rp3d_test(mVector345.x == 3.0); + rp3d_test(mVector345.y == 4.0); + rp3d_test(mVector345.z == 5.0); // Test copy-constructor Vector3 newVector(mVector345); - test(newVector.x == 3.0); - test(newVector.y == 4.0); - test(newVector.z == 5.0); + rp3d_test(newVector.x == 3.0); + rp3d_test(newVector.y == 4.0); + rp3d_test(newVector.z == 5.0); // Test method to set values Vector3 newVector2; newVector2.setAllValues(decimal(6.1), decimal(7.2), decimal(8.6)); - test(approxEqual(newVector2.x, decimal(6.1))); - test(approxEqual(newVector2.y, decimal(7.2))); - test(approxEqual(newVector2.z, decimal(8.6))); + rp3d_test(approxEqual(newVector2.x, decimal(6.1))); + rp3d_test(approxEqual(newVector2.y, decimal(7.2))); + rp3d_test(approxEqual(newVector2.z, decimal(8.6))); // Test method to set to zero newVector2.setToZero(); - test(newVector2 == Vector3(0, 0, 0)); + rp3d_test(newVector2 == Vector3(0, 0, 0)); } /// Test the length, unit vector and normalize methods void testLengthMethods() { // Test length methods - test(mVectorZero.length() == 0.0); - test(mVectorZero.lengthSquare() == 0.0); - test(Vector3(1, 0, 0).length() == 1.0); - test(Vector3(0, 1, 0).length() == 1.0); - test(Vector3(0, 0, 1).length() == 1.0); - test(mVector345.lengthSquare() == 50.0); + rp3d_test(mVectorZero.length() == 0.0); + rp3d_test(mVectorZero.lengthSquare() == 0.0); + rp3d_test(Vector3(1, 0, 0).length() == 1.0); + rp3d_test(Vector3(0, 1, 0).length() == 1.0); + rp3d_test(Vector3(0, 0, 1).length() == 1.0); + rp3d_test(mVector345.lengthSquare() == 50.0); // Test unit vector methods - test(Vector3(1, 0, 0).isUnit()); - test(Vector3(0, 1, 0).isUnit()); - test(Vector3(0, 0, 1).isUnit()); - test(!mVector345.isUnit()); - test(Vector3(5, 0, 0).getUnit() == Vector3(1, 0, 0)); - test(Vector3(0, 5, 0).getUnit() == Vector3(0, 1, 0)); - test(Vector3(0, 0, 5).getUnit() == Vector3(0, 0, 1)); + rp3d_test(Vector3(1, 0, 0).isUnit()); + rp3d_test(Vector3(0, 1, 0).isUnit()); + rp3d_test(Vector3(0, 0, 1).isUnit()); + rp3d_test(!mVector345.isUnit()); + rp3d_test(Vector3(5, 0, 0).getUnit() == Vector3(1, 0, 0)); + rp3d_test(Vector3(0, 5, 0).getUnit() == Vector3(0, 1, 0)); + rp3d_test(Vector3(0, 0, 5).getUnit() == Vector3(0, 0, 1)); - test(!mVector345.isZero()); - test(mVectorZero.isZero()); + rp3d_test(!mVector345.isZero()); + rp3d_test(mVectorZero.isZero()); // Test normalization method Vector3 mVector100(1, 0, 0); @@ -130,114 +130,114 @@ class TestVector3 : public Test { mVector500.normalize(); mVector050.normalize(); mVector005.normalize(); - test(mVector100 == Vector3(1, 0, 0)); - test(mVector010 == Vector3(0, 1, 0)); - test(mVector001 == Vector3(0, 0, 1)); - test(mVector500 == Vector3(1, 0, 0)); - test(mVector050 == Vector3(0, 1, 0)); - test(mVector005 == Vector3(0, 0, 1)); + rp3d_test(mVector100 == Vector3(1, 0, 0)); + rp3d_test(mVector010 == Vector3(0, 1, 0)); + rp3d_test(mVector001 == Vector3(0, 0, 1)); + rp3d_test(mVector500 == Vector3(1, 0, 0)); + rp3d_test(mVector050 == Vector3(0, 1, 0)); + rp3d_test(mVector005 == Vector3(0, 0, 1)); } /// Test the dot and cross products void testDotCrossProducts() { // Test the dot product - test(Vector3(5, 0, 0).dot(Vector3(0, 8, 0)) == 0); - test(Vector3(5, 8, 0).dot(Vector3(0, 0, 6)) == 0); - test(Vector3(12, 45, 83).dot(Vector3(0, 0, 0)) == 0); - test(Vector3(5, 7, 8).dot(Vector3(5, 7, 8)) == 138); - test(Vector3(3, 6, 78).dot(Vector3(-3, -6, -78)) == -6129); - test(Vector3(2, 3, 5).dot(Vector3(2, 3, 5)) == 38); - test(Vector3(4, 3, 2).dot(Vector3(8, 9, 10)) == 79); + rp3d_test(Vector3(5, 0, 0).dot(Vector3(0, 8, 0)) == 0); + rp3d_test(Vector3(5, 8, 0).dot(Vector3(0, 0, 6)) == 0); + rp3d_test(Vector3(12, 45, 83).dot(Vector3(0, 0, 0)) == 0); + rp3d_test(Vector3(5, 7, 8).dot(Vector3(5, 7, 8)) == 138); + rp3d_test(Vector3(3, 6, 78).dot(Vector3(-3, -6, -78)) == -6129); + rp3d_test(Vector3(2, 3, 5).dot(Vector3(2, 3, 5)) == 38); + rp3d_test(Vector3(4, 3, 2).dot(Vector3(8, 9, 10)) == 79); // Test the cross product - test(Vector3(0, 0, 0).cross(Vector3(0, 0, 0)) == Vector3(0, 0, 0)); - test(Vector3(6, 7, 2).cross(Vector3(6, 7, 2)) == Vector3(0, 0, 0)); - test(Vector3(1, 0, 0).cross(Vector3(0, 1, 0)) == Vector3(0, 0, 1)); - test(Vector3(0, 1, 0).cross(Vector3(0, 0, 1)) == Vector3(1, 0, 0)); - test(Vector3(0, 0, 1).cross(Vector3(0, 1, 0)) == Vector3(-1, 0, 0)); - test(Vector3(4, 7, 24).cross(Vector3(8, 13, 11)) == Vector3(-235, 148, -4)); - test(Vector3(-4, 42, -2).cross(Vector3(35, 7, -21)) == Vector3(-868, -154, -1498)); + rp3d_test(Vector3(0, 0, 0).cross(Vector3(0, 0, 0)) == Vector3(0, 0, 0)); + rp3d_test(Vector3(6, 7, 2).cross(Vector3(6, 7, 2)) == Vector3(0, 0, 0)); + rp3d_test(Vector3(1, 0, 0).cross(Vector3(0, 1, 0)) == Vector3(0, 0, 1)); + rp3d_test(Vector3(0, 1, 0).cross(Vector3(0, 0, 1)) == Vector3(1, 0, 0)); + rp3d_test(Vector3(0, 0, 1).cross(Vector3(0, 1, 0)) == Vector3(-1, 0, 0)); + rp3d_test(Vector3(4, 7, 24).cross(Vector3(8, 13, 11)) == Vector3(-235, 148, -4)); + rp3d_test(Vector3(-4, 42, -2).cross(Vector3(35, 7, -21)) == Vector3(-868, -154, -1498)); } /// Test others methods void testOthersMethods() { // Test the method that returns the absolute vector - test(Vector3(4, 5, 6).getAbsoluteVector() == Vector3(4, 5, 6)); - test(Vector3(-7, -24, -12).getAbsoluteVector() == Vector3(7, 24, 12)); + rp3d_test(Vector3(4, 5, 6).getAbsoluteVector() == Vector3(4, 5, 6)); + rp3d_test(Vector3(-7, -24, -12).getAbsoluteVector() == Vector3(7, 24, 12)); // Test the method that returns the minimal element - test(Vector3(6, 35, 82).getMinAxis() == 0); - test(Vector3(564, 45, 532).getMinAxis() == 1); - test(Vector3(98, 23, 3).getMinAxis() == 2); - test(Vector3(-53, -25, -63).getMinAxis() == 2); + rp3d_test(Vector3(6, 35, 82).getMinAxis() == 0); + rp3d_test(Vector3(564, 45, 532).getMinAxis() == 1); + rp3d_test(Vector3(98, 23, 3).getMinAxis() == 2); + rp3d_test(Vector3(-53, -25, -63).getMinAxis() == 2); // Test the method that returns the maximal element - test(Vector3(6, 35, 82).getMaxAxis() == 2); - test(Vector3(7, 533, 36).getMaxAxis() == 1); - test(Vector3(98, 23, 3).getMaxAxis() == 0); - test(Vector3(-53, -25, -63).getMaxAxis() == 1); + rp3d_test(Vector3(6, 35, 82).getMaxAxis() == 2); + rp3d_test(Vector3(7, 533, 36).getMaxAxis() == 1); + rp3d_test(Vector3(98, 23, 3).getMaxAxis() == 0); + rp3d_test(Vector3(-53, -25, -63).getMaxAxis() == 1); // Test the methot that return a max/min vector Vector3 vec1(-5, 4, 2); Vector3 vec2(-8, 6, -1); - test(Vector3::min(vec1, vec2) == Vector3(-8, 4, -1)); - test(Vector3::max(vec1, vec2) == Vector3(-5, 6, 2)); + rp3d_test(Vector3::min(vec1, vec2) == Vector3(-8, 4, -1)); + rp3d_test(Vector3::max(vec1, vec2) == Vector3(-5, 6, 2)); } /// Test the operators void testOperators() { // Test the [] operator - test(mVector345[0] == 3); - test(mVector345[1] == 4); - test(mVector345[2] == 5); + rp3d_test(mVector345[0] == 3); + rp3d_test(mVector345[1] == 4); + rp3d_test(mVector345[2] == 5); // Assignment operator Vector3 newVector(6, 4, 2); newVector = Vector3(7, 8, 9); - test(newVector == Vector3(7, 8, 9)); + rp3d_test(newVector == Vector3(7, 8, 9)); // Equality, inequality operators - test(Vector3(5, 7, 3) == Vector3(5, 7, 3)); - test(Vector3(63, 64, 24) != Vector3(63, 64, 5)); - test(Vector3(63, 64, 24) != Vector3(12, 64, 24)); - test(Vector3(63, 64, 24) != Vector3(63, 8, 24)); + rp3d_test(Vector3(5, 7, 3) == Vector3(5, 7, 3)); + rp3d_test(Vector3(63, 64, 24) != Vector3(63, 64, 5)); + rp3d_test(Vector3(63, 64, 24) != Vector3(12, 64, 24)); + rp3d_test(Vector3(63, 64, 24) != Vector3(63, 8, 24)); // Addition, substraction Vector3 vector1(6, 33, 62); Vector3 vector2(7, 68, 35); - test(Vector3(63, 24, 5) + Vector3(3, 4, 2) == Vector3(66, 28, 7)); - test(Vector3(63, 24, 5) - Vector3(3, 4, 2) == Vector3(60, 20, 3)); + rp3d_test(Vector3(63, 24, 5) + Vector3(3, 4, 2) == Vector3(66, 28, 7)); + rp3d_test(Vector3(63, 24, 5) - Vector3(3, 4, 2) == Vector3(60, 20, 3)); vector1 += Vector3(5, 10, 12); vector2 -= Vector3(10, 21, 5); - test(vector1 == Vector3(11, 43, 74)); - test(vector2 == Vector3(-3, 47, 30)); + rp3d_test(vector1 == Vector3(11, 43, 74)); + rp3d_test(vector2 == Vector3(-3, 47, 30)); // Multiplication, division Vector3 vector3(6, 33, 62); Vector3 vector4(15, 60, 33); - test(Vector3(63, 24, 5) * 3 == Vector3(189, 72, 15)); - test(3 * Vector3(63, 24, 5) == Vector3(189, 72, 15)); - test(Vector3(14, 8, 50) / 2 == Vector3(7, 4, 25)); + rp3d_test(Vector3(63, 24, 5) * 3 == Vector3(189, 72, 15)); + rp3d_test(3 * Vector3(63, 24, 5) == Vector3(189, 72, 15)); + rp3d_test(Vector3(14, 8, 50) / 2 == Vector3(7, 4, 25)); vector3 *= 10; vector4 /= 3; - test(vector3 == Vector3(60, 330, 620)); - test(vector4 == Vector3(5, 20, 11)); + rp3d_test(vector3 == Vector3(60, 330, 620)); + rp3d_test(vector4 == Vector3(5, 20, 11)); Vector3 vector5(21, 80, 45); Vector3 vector6(7, 10, 3); Vector3 vector7 = vector5 * vector6; - test(vector7 == Vector3(147, 800, 135)); + rp3d_test(vector7 == Vector3(147, 800, 135)); Vector3 vector8 = vector5 / vector6; - test(approxEqual(vector8.x, 3)); - test(approxEqual(vector8.y, 8)); - test(approxEqual(vector8.z, 15)); + rp3d_test(approxEqual(vector8.x, 3)); + rp3d_test(approxEqual(vector8.y, 8)); + rp3d_test(approxEqual(vector8.z, 15)); // Negative operator Vector3 vector9(-34, 5, 422); Vector3 negative = -vector9; - test(negative == Vector3(34, -5, -422)); + rp3d_test(negative == Vector3(34, -5, -422)); } };