| ------------------------------------------------------------------------- |
| drawElements Quality Program Test Specification |
| ----------------------------------------------- |
| |
| Copyright 2015 The Android Open Source Project |
| |
| Licensed under the Apache License, Version 2.0 (the "License"); |
| you may not use this file except in compliance with the License. |
| You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
| ------------------------------------------------------------------------- |
| EXT_texture_border_clamp tests |
| |
| Tests: |
| + dEQP-GLES31.texture.border_clamp.* |
| + dEQP-GLES31.functional.state_query.texture.*.texture_border_color_* |
| |
| Includes: |
| + State query tests |
| + Rendering tests with all GLES31 texture formats. |
| + Tests with power-of-two and non-power-of-two texture sizes. |
| + Nearest and linear samping. Sampling with texture gather. |
| + Rendering tests with border value exceeding the representable range of |
| the texture format. |
| + Sampling depth textures with mode set to COMPARE_REF_TO_TEXTURE. |
| |
| Excludes: |
| + Sampling with mipmaps |
| + Sampling with texture 2d arrays or cubemaps |
| + Texture swizzle cases |
| + Exhaustive testing of all s/t/r wrapping mode combinations |
| |
| Description: |
| |
| Texture border clamp cases test functionality added in |
| EXT_texture_border_clamp extension. Tests set up a texture with a certain |
| format, set border color to certain value, set one or more wrapping modes to |
| CLAMP_TO_BORDER, and then proceed to render the texture to screen. The |
| rendering result is then verified. Test cases also generate a reference image |
| which may be useful when evaluating results. |
| |
| In formats.* subgroup, all GLES31 texture formats are tested. Each format is |
| tested with power-of-two and non-power-of-two texture sizes using NEAREST and |
| LINEAR filtering, and texture-gather fetching. |
| |
| In range_clamp.* subgroup, border color components are set to values that are |
| not in the representable range of the internal format. The effective value is |
| expected to be clamped to the valid range. |
| |
| In sampler.* subgroup, texture border color and wrapping mode are set using |
| a sampler state. |
| |
| In per_axis_wrap_mode.*, texture wrap mode is not same in all S, T, and R |
| directions. Wrapping is tested for 2D and 3D textures with multiple formats |
| and with different sampling modes. |
| |
| In depth_compare_mode.*, depth texture border values are tested with compare |
| mode set to COMPARE_REF_TO_TEXTURE. |
| |
| In unused_channels.*, border color has non-zero values in components that are |
| not representable in the target formats. These components are expected to have |
| no effect. |