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 Mipmapping tests 20 21Tests: 22 + dEQP-GLES3.functional.texture.mipmap.* 23 24Includes: 25 + All mipmap filtering modes 26 + Lod computation verification 27 + Affine and projected transforms 28 + User-supplied bias to texture lookup 29 + Lod controls: min and max lod 30 + 2D and cube map textures 31 32Excludes: 33 + Only selected texture formats are exercised 34 35Description: 36 37Mipmapping tests render a pre-defined grid of quads. For 2D textures regular 384x4 grid layout is used. For cube map textures the viewport is recursively 39subdivided into smaller areas and each is filled with samples from single 40cube face. 41 42Each texture level is filled with single color. However, each mipmap level 43gets assigned a different color from a continuous gradient. Thus it is possible 44to evaluate how accurately the lod was computed by inspecting the resulting 45colorbuffer. 46 47OpenGL ES specification allows approximating both derivate- and lod computation. 48Thus two reference images are rendered: one rendered according to the minimum 49bound for the approximation and another based on the maximum bound. The rendered 50pixels must be in between the two bounds in order to be valid. In order to 51compensate the derivate approximation the pixels are actually checked against 52a 3x3 neighbor around the pixel. 53