diff options
| author | Egor Yusov <egor.yusov@gmail.com> | 2018-03-26 03:37:03 +0000 |
|---|---|---|
| committer | Egor Yusov <egor.yusov@gmail.com> | 2018-03-26 03:37:03 +0000 |
| commit | 6019c9be9e028fc5948bfa87f2f4f0fe75e0ef88 (patch) | |
| tree | b7bcdb757f855c56b22672038765fd12e2c1b9a3 /Tests/TestApp/src | |
| parent | Updated include test to reference all headers relative to the Engine root (diff) | |
| download | DiligentEngine-6019c9be9e028fc5948bfa87f2f4f0fe75e0ef88.tar.gz DiligentEngine-6019c9be9e028fc5948bfa87f2f4f0fe75e0ef88.zip | |
Added ortho projection matrix test
Diffstat (limited to 'Tests/TestApp/src')
| -rw-r--r-- | Tests/TestApp/src/MathLibTest.cpp | 32 |
1 files changed, 32 insertions, 0 deletions
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<float2x2>()(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); } }; |
