1 ------------------------------------------------------------------------- 2 drawElements Quality Program Test Specification 3 ----------------------------------------------- 4 5 Copyright 2014 The Android Open Source Project 6 7 Licensed under the Apache License, Version 2.0 (the "License"); 8 you may not use this file except in compliance with the License. 9 You may obtain a copy of the License at 10 11 http://www.apache.org/licenses/LICENSE-2.0 12 13 Unless required by applicable law or agreed to in writing, software 14 distributed under the License is distributed on an "AS IS" BASIS, 15 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 See the License for the specific language governing permissions and 17 limitations under the License. 18 ------------------------------------------------------------------------- 19 Texture format sets 20 21 Tests: 22 + dEQP-GLES3.functional.texture.format.* 23 24 Includes: 25 + Unsized color texture formats: 26 - GLES2: ALPHA, LUMINANCE, LUMINANCE_ALPHA, RGB, RGBA 27 - GLES3: RED, RG, INTEGER variants 28 + Unsized depth and stencil formats: 29 - DEPTH_COMPONENT, DEPTH_STENCIL 30 + All sized color texture formats 31 + All sized depth and stencil texture formats 32 + sRGB texture formats 33 + Following compressed texture formats: 34 - ETC1 35 - ETC2 36 - EAC 37 + Power-of-two and non-power-of-two texture sizes 38 + Texture access from fragment shader with following parameters: 39 - Nearest-neighbor filtering 40 - Clamp-to-edge wrap mode 41 - Single texture, unit 0 42 - Named texture object 43 - Coordinates in range (0, 0) -> (1, 1) 44 + 2D textures 45 + Cube map textures 46 + 2D array textures 47 + 3D textures 48 49 Excludes: 50 + Other texture wrap and filtering modes 51 - Covered in functional.texture.filtering and functional.texture.wrap 52 + Vertex-side texture access 53 - Will be covered in functional.texture.vertex tests 54 + Texture format conversions in upload 55 - Will be covered in functional.texture.conversion 56 57 Description: 58 59 Texture format tests create a single texture with pre-configured dimensions 60 and format. Uncompressed images will be filled with gradient that exercises 61 the maximum value range allowed by the format. For compressed formats 62 randomized input bits are used to thoroughly exercise all decoding paths. 63 64 Each test case renders one or more times a plain quad that samples a slice 65 of the image: 66 67 * 2D textures: Single quad that samples the full texture is rendered. 68 * Cubemaps: Each cube face is rendered separately. 69 * 2D array textures: Each layer is rendered separately. 70 * 3D textures: Each slice is rendered separately. 71 72 The viewport is configured to match the slice size. Texture coordinates 73 yield a 1:1 mapping from texels to framebuffer pixels. Thus filtering 74 shouldn't affect the resulting images. 75 76 The rendered image is compared against a reference that is produced by 77 reference renderer. A simple threshold-based comparison is used. 78