// // Copyright 2023 The ANGLE Project Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. // // Test cases for GL_EXT_clip_control // These tests complement dEQP-GLES2.functional.clip_control.* // #include "test_utils/ANGLETest.h" #include "test_utils/gl_raii.h" #include "util/EGLWindow.h" #include "util/test_utils.h" usingnamespaceangle; class ClipControlTest : public ANGLETest<> { … }; // Test state queries and updates TEST_P(ClipControlTest, StateQuery) { … } // Test that clip origin does not affect scissored clears TEST_P(ClipControlTest, OriginScissorClear) { … } // Test that changing clip origin state does not affect location of scissor area TEST_P(ClipControlTest, OriginScissorDraw) { … } // Test that changing clip origin state does not affect copyTexImage TEST_P(ClipControlTest, OriginCopyTexImage) { … } // Test that changing clip origin state does not affect copyTexImage // with Luma format that may use draw calls internally TEST_P(ClipControlTest, OriginCopyTexImageLuma) { … } // Test that clip origin does not affect gl_FragCoord TEST_P(ClipControlTest, OriginFragCoord) { … } // Test that clip origin does not affect gl_PointCoord TEST_P(ClipControlTest, OriginPointCoord) { … } // Test that clip origin does not affect gl_FrontFacing TEST_P(ClipControlTest, OriginFrontFacing) { … } // Test that clip origin does not affect readPixels TEST_P(ClipControlTest, OriginReadPixels) { … } // Test that changing only the clip depth mode syncs the state correctly TEST_P(ClipControlTest, DepthModeSimple) { … } // Test that gl_FragCoord.z has expected values for ZERO_TO_ONE clip depth mode TEST_P(ClipControlTest, DepthFragCoord) { … } class ClipControlTestES3 : public ClipControlTest { … }; // Test that clip origin state does not affect framebuffer blits TEST_P(ClipControlTestES3, OriginBlit) { … } ANGLE_INSTANTIATE_TEST_ES2_AND_ES3_AND(…); ANGLE_INSTANTIATE_TEST_ES3_AND(…);