Home | History | Annotate | Download | only in GLES3
      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     Integer operator tests
     20 
     21 Tests:
     22  + dEQP-GLES3.functional.shaders.operator.unary_operator.*.*_int_*
     23  + dEQP-GLES3.functional.shaders.operator.unary_operator.*.*_ivec_*
     24  + dEQP-GLES3.functional.shaders.operator.unary_operator.*.*_uint_*
     25  + dEQP-GLES3.functional.shaders.operator.unary_operator.*.*_uvec_*
     26  + dEQP-GLES3.functional.shaders.operator.binary_operator.*.*_int_*
     27  + dEQP-GLES3.functional.shaders.operator.binary_operator.*.*_ivec_*
     28  + dEQP-GLES3.functional.shaders.operator.binary_operator.*.*_uint_*
     29  + dEQP-GLES3.functional.shaders.operator.binary_operator.*.*_uvec_*
     30 
     31 Includes:
     32  + Integer scalar and vector unary operators:
     33    - plus
     34    - minus
     35    - bitwise not
     36  + Integer scalar and vector binary operators:
     37    - add
     38    - sub
     39    - mul
     40    - div
     41    - mod
     42    - bitwise and
     43    - bitwise or
     44    - bitwise xor
     45    - less
     46    - less or equal
     47    - greater
     48    - greater or equal
     49    - equal
     50    - not equal
     51  + Scalar-scalar, vector-vector and vector-scalar binary operators
     52  + Lowp, mediump operands where behaviour is well-defined
     53  + Highp operands
     54 
     55 Excludes:
     56  + Integer type range and bitlayout verification
     57    - Will be tested in later type range and storage tests
     58 
     59 Description:
     60 
     61 Integer test cases use shader rendering test framework. Depending on case type
     62 (vertex or fragment) a single quad or a tight grid of quads is rendered with
     63 the shader program that is being tested. Results are compared against a reference.
     64 Reference image is rendered using a C reference of the shader. A fuzzy comparison
     65 is used to allow small deviations due to fragment input interpolation.
     66 
     67 Integer operator test shaders use floating-point attributes or varyings converted
     68 to integers as operands. The value range is chosen based on precision. Results
     69 from the operation are casted back to floating-point values and scaled to range
     70 0..1. The resulting scalar or vector value is then written out as vertex or
     71 fragment color.
     72