1------------------------------------------------------------------------- 2drawElements Quality Program Test Specification 3----------------------------------------------- 4 5Copyright 2014 The Android Open Source Project 6 7Licensed under the Apache License, Version 2.0 (the "License"); 8you may not use this file except in compliance with the License. 9You may obtain a copy of the License at 10 11 http://www.apache.org/licenses/LICENSE-2.0 12 13Unless required by applicable law or agreed to in writing, software 14distributed under the License is distributed on an "AS IS" BASIS, 15WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16See the License for the specific language governing permissions and 17limitations under the License. 18------------------------------------------------------------------------- 19 Copy Image Tests (GL_EXT_copy_image) 20 21Tests: 22 + dEQP-GLES31.copy_image.* 23 24Includes: 25 + 2D texture images 26 + Cube map texture images 27 + 3D texture images 28 + 2D texture array images 29 + Renderbuffer images 30 + Copies between different formats 31 + Copies between different compressed formats 32 + Copies between compressed and non-compressed formats 33 + Using images for rendering before copy 34 + Not using images for rendering before copy 35 + Compressed ASTC formats 36 + Compressed ETC formats 37 + Compressed ETC2 formats 38 39Excludes: 40 + Copies between two float formats 41 + Invalid ASTC blocks 42 + HDR ASTC blocks 43 + 3D block ASTC formats 44 + Other compressed formats than ASTC, ETC and ETC2 45 46Description: 47 48Test creates two images and initializes them to random data. Both images have 49always npot size and texture images are always created so that they are mipmap 50complete. Random data is always generated so that it is valid for both formats 51e.g. no invalid ASTC blocks or NaNs exist before or after copying. 52 53Multiple copies are performed per test case. Texture levels 0, 1 and last level 54are used as source and destination levels. For each texture level top left and 55bottom right corners are used as source rectangle and destination rectangle. 56Also npot offset in the middle of the image is used. Some of the copied 57rectangles are npot size. 58 59Each test case does copying in two different ways. First they create images, 60use them for rendering, copy and perform verification. Second time they create 61images and immediately copy them without rendering and finally verify image 62contents. 63 64Instead of trying to isolate different smaller features and testing them 65separately, these tests try to test multiple cases for each format as there 66would be huge number of tests and it would take too long to run more than one 67case for each format and image combination. 68