From 1bc9ad4cbc913a03a8d4368d45a57f2818bafa64 Mon Sep 17 00:00:00 2001 From: Egor Yusov Date: Sun, 25 Mar 2018 13:35:07 -0700 Subject: Updated copyright notice --- Tests/TestApp/src/MathLibTest.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'Tests/TestApp/src/MathLibTest.cpp') diff --git a/Tests/TestApp/src/MathLibTest.cpp b/Tests/TestApp/src/MathLibTest.cpp index 572e338..c04fe2c 100644 --- a/Tests/TestApp/src/MathLibTest.cpp +++ b/Tests/TestApp/src/MathLibTest.cpp @@ -1,4 +1,4 @@ -/* Copyright 2015-2017 Egor Yusov +/* Copyright 2015-2018 Egor Yusov * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. -- cgit v1.2.3 From 6019c9be9e028fc5948bfa87f2f4f0fe75e0ef88 Mon Sep 17 00:00:00 2001 From: Egor Yusov Date: Sun, 25 Mar 2018 20:37:03 -0700 Subject: Added ortho projection matrix test --- Tests/TestApp/src/MathLibTest.cpp | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) (limited to 'Tests/TestApp/src/MathLibTest.cpp') diff --git a/Tests/TestApp/src/MathLibTest.cpp b/Tests/TestApp/src/MathLibTest.cpp index c04fe2c..d43de16 100644 --- a/Tests/TestApp/src/MathLibTest.cpp +++ b/Tests/TestApp/src/MathLibTest.cpp @@ -519,6 +519,38 @@ public: 5, 6); std::hash()(m3); } + + // Test ortho projection matrix + { + { + float4x4 OrthoProj = Ortho(2.f, 4.f, -4.f, 12.f, true); + auto c0 = float3(-1.f, -2.f, -4.f) * OrthoProj; + auto c1 = float3(+1.f, +2.f, +12.f) * OrthoProj; + VERIFY_EXPR(c0 == float3(-1, -1, 0) && c1 == float3(+1,+1,+1) ); + } + + { + float4x4 OrthoProj = Ortho(2.f, 4.f, -4.f, 12.f, false); + auto c0 = float3(-1.f, -2.f, -4.f) * OrthoProj; + auto c1 = float3(+1.f, +2.f, +12.f) * OrthoProj; + VERIFY_EXPR(c0 == float3(-1, -1, -1) && c1 == float3(+1, +1, +1)); + } + + { + float4x4 OrthoProj = OrthoOffCenter(-2.f, 6.f, -4.f, +12.f, -6.f, 10.f, true); + auto c0 = float3(-2.f, -4.f, -6.f) * OrthoProj; + auto c1 = float3(+6.f, +12.f, +10.f) * OrthoProj; + VERIFY_EXPR(c0 == float3(-1, -1, 0) && c1 == float3(+1, +1, +1)); + } + + { + float4x4 OrthoProj = OrthoOffCenter(-2.f, 6.f, -4.f, +12.f, -6.f, 10.f, false); + auto c0 = float3(-2.f, -4.f, -6.f) * OrthoProj; + auto c1 = float3(+6.f, +12.f, +10.f) * OrthoProj; + VERIFY_EXPR(c0 == float3(-1, -1, -1) && c1 == float3(+1, +1, +1)); + } + } + SetStatus(TestResult::Succeeded); } }; -- cgit v1.2.3