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 performance tests 20 21 Tests: 22 + dEQP-GLES2.performance.texture.format.* 23 24 Includes: 25 + Texture lookup performance with all uncompressed texture formats 26 + 2D and cubemap textures 27 + Texture lookup in vertex and fragment shaders 28 + Nearest neighbor -filtering and clamp to edge -wrap mode 29 30 Excludes: 31 + Performance of other filtering or wrap modes 32 - Covered performance.texture.filtering and performance.texture.wrap 33 34 Description: 35 36 Test cases measure performance of 2D and cubemap texture lookups without 37 filtering (nearest neighbor mode). Shader body is populated with one or 38 more texture lookups, each targeting different texture unit. There are 39 test cases for the most relevant texture lookup counts. 40 41 Texture lookups use same coordinates and lookup results are multiplied 42 together to produce the final color for vertex or fragment. Additive 43 blending is used to force fragment shader execution for all fragments. 44 45 Texture size is the same as viewport size. Each texture unit uses a unique 46 texture object. Texture objects are however re-used across draw calls. 47 Textures are sampled in range (0, 0) -> (1, 1). Vertex-side tests use 48 2x2 pixel quads, e.g. each vertex gives a color for single pixel. 49 In this configuration viewportW*viewportH*numTextures unique texels are 50 sampled in each draw call. 51 52 Per-iteration draw call count is automatically chosen so that rendering runs 53 approximately 30fps. Result is MPix/s or MVert/s computed from number of draw 54 calls and actual frame time. 55 56 See performance.txt for more details on shader performance testing. 57