1e5c31af7Sopenharmony_ci-------------------------------------------------------------------------
2e5c31af7Sopenharmony_cidrawElements Quality Program Test Specification
3e5c31af7Sopenharmony_ci-----------------------------------------------
4e5c31af7Sopenharmony_ci
5e5c31af7Sopenharmony_ciCopyright 2015 The Android Open Source Project
6e5c31af7Sopenharmony_ci
7e5c31af7Sopenharmony_ciLicensed under the Apache License, Version 2.0 (the "License");
8e5c31af7Sopenharmony_ciyou may not use this file except in compliance with the License.
9e5c31af7Sopenharmony_ciYou may obtain a copy of the License at
10e5c31af7Sopenharmony_ci
11e5c31af7Sopenharmony_ci     http://www.apache.org/licenses/LICENSE-2.0
12e5c31af7Sopenharmony_ci
13e5c31af7Sopenharmony_ciUnless required by applicable law or agreed to in writing, software
14e5c31af7Sopenharmony_cidistributed under the License is distributed on an "AS IS" BASIS,
15e5c31af7Sopenharmony_ciWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16e5c31af7Sopenharmony_ciSee the License for the specific language governing permissions and
17e5c31af7Sopenharmony_cilimitations under the License.
18e5c31af7Sopenharmony_ci-------------------------------------------------------------------------
19e5c31af7Sopenharmony_ci    EXT_texture_border_clamp tests
20e5c31af7Sopenharmony_ci
21e5c31af7Sopenharmony_ciTests:
22e5c31af7Sopenharmony_ci + dEQP-GLES31.texture.border_clamp.*
23e5c31af7Sopenharmony_ci + dEQP-GLES31.functional.state_query.texture.*.texture_border_color_*
24e5c31af7Sopenharmony_ci
25e5c31af7Sopenharmony_ciIncludes:
26e5c31af7Sopenharmony_ci + State query tests
27e5c31af7Sopenharmony_ci + Rendering tests with all GLES31 texture formats.
28e5c31af7Sopenharmony_ci + Tests with power-of-two and non-power-of-two texture sizes.
29e5c31af7Sopenharmony_ci + Nearest and linear samping. Sampling with texture gather.
30e5c31af7Sopenharmony_ci + Rendering tests with border value exceeding the representable range of
31e5c31af7Sopenharmony_ci   the texture format.
32e5c31af7Sopenharmony_ci + Sampling depth textures with mode set to COMPARE_REF_TO_TEXTURE.
33e5c31af7Sopenharmony_ci
34e5c31af7Sopenharmony_ciExcludes:
35e5c31af7Sopenharmony_ci + Sampling with mipmaps
36e5c31af7Sopenharmony_ci + Sampling with texture 2d arrays or cubemaps
37e5c31af7Sopenharmony_ci + Texture swizzle cases
38e5c31af7Sopenharmony_ci + Exhaustive testing of all s/t/r wrapping mode combinations
39e5c31af7Sopenharmony_ci
40e5c31af7Sopenharmony_ciDescription:
41e5c31af7Sopenharmony_ci
42e5c31af7Sopenharmony_ciTexture border clamp cases test functionality added in
43e5c31af7Sopenharmony_ciEXT_texture_border_clamp extension. Tests set up a texture with a certain
44e5c31af7Sopenharmony_ciformat, set border color to certain value, set one or more wrapping modes to
45e5c31af7Sopenharmony_ciCLAMP_TO_BORDER, and then proceed to render the texture to screen. The
46e5c31af7Sopenharmony_cirendering result is then verified. Test cases also generate a reference image
47e5c31af7Sopenharmony_ciwhich may be useful when evaluating results.
48e5c31af7Sopenharmony_ci
49e5c31af7Sopenharmony_ciIn formats.* subgroup, all GLES31 texture formats are tested. Each format is
50e5c31af7Sopenharmony_citested with power-of-two and non-power-of-two texture sizes using NEAREST and
51e5c31af7Sopenharmony_ciLINEAR filtering, and texture-gather fetching.
52e5c31af7Sopenharmony_ci
53e5c31af7Sopenharmony_ciIn range_clamp.* subgroup, border color components are set to values that are
54e5c31af7Sopenharmony_cinot in the representable range of the internal format. The effective value is
55e5c31af7Sopenharmony_ciexpected to be clamped to the valid range.
56e5c31af7Sopenharmony_ci
57e5c31af7Sopenharmony_ciIn sampler.* subgroup, texture border color and wrapping mode are set using
58e5c31af7Sopenharmony_cia sampler state.
59e5c31af7Sopenharmony_ci
60e5c31af7Sopenharmony_ciIn per_axis_wrap_mode.*, texture wrap mode is not same in all S, T, and R
61e5c31af7Sopenharmony_cidirections. Wrapping is tested for 2D and 3D textures with multiple formats
62e5c31af7Sopenharmony_ciand with different sampling modes.
63e5c31af7Sopenharmony_ci
64e5c31af7Sopenharmony_ciIn depth_compare_mode.*, depth texture border values are tested with compare
65e5c31af7Sopenharmony_cimode set to COMPARE_REF_TO_TEXTURE.
66e5c31af7Sopenharmony_ci
67e5c31af7Sopenharmony_ciIn unused_channels.*, border color has non-zero values in components that are
68e5c31af7Sopenharmony_cinot representable in the target formats. These components are expected to have
69e5c31af7Sopenharmony_cino effect.
70