blob: 92f57f4e1c43edd9a2624af2d028098373f3911b [file] [log] [blame] [edit]
-------------------------------------------------------------------------
drawElements Quality Program Test Specification
-----------------------------------------------
Copyright 2014 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.
-------------------------------------------------------------------------
Texture format performance tests
Tests:
+ dEQP-GLES2.performance.texture.format.*
Includes:
+ Texture lookup performance with all uncompressed texture formats
+ 2D and cubemap textures
+ Texture lookup in vertex and fragment shaders
+ Nearest neighbor -filtering and clamp to edge -wrap mode
Excludes:
+ Performance of other filtering or wrap modes
- Covered performance.texture.filtering and performance.texture.wrap
Description:
Test cases measure performance of 2D and cubemap texture lookups without
filtering (nearest neighbor mode). Shader body is populated with one or
more texture lookups, each targeting different texture unit. There are
test cases for the most relevant texture lookup counts.
Texture lookups use same coordinates and lookup results are multiplied
together to produce the final color for vertex or fragment. Additive
blending is used to force fragment shader execution for all fragments.
Texture size is the same as viewport size. Each texture unit uses a unique
texture object. Texture objects are however re-used across draw calls.
Textures are sampled in range (0, 0) -> (1, 1). Vertex-side tests use
2x2 pixel quads, e.g. each vertex gives a color for single pixel.
In this configuration viewportW*viewportH*numTextures unique texels are
sampled in each draw call.
Per-iteration draw call count is automatically chosen so that rendering runs
approximately 30fps. Result is MPix/s or MVert/s computed from number of draw
calls and actual frame time.
See performance.txt for more details on shader performance testing.