Home | History | Annotate | Download | only in GLES31
      1 -------------------------------------------------------------------------
      2 drawElements Quality Program Test Specification
      3 -----------------------------------------------
      4 
      5 Copyright 2015 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     GL_EXT_draw_buffers_indexed tests.
     20 
     21 Tests:
     22  + dEQP-GLES31.functional.draw_buffers_indexed.*
     23 
     24 Includes:
     25  + Blend equations, blend functions, blend enable and color masks.
     26  + Setting common state first and then per draw buffer state.
     27  + Setting per draw buffer state first and then common state.
     28  + Overriding per draw buffer state with common state.
     29  + Overriding common state with per draw buffer state.
     30  + Random tests for different states and renderbuffer formats.
     31 
     32 Excludes:
     33  + Query tests.
     34  + Exhaustive blend state combinations.
     35  + Exhaustive tests for all renderbuffer formats.
     36 
     37 Description:
     38 
     39 Each test cases begins by creating framebuffer object and required renderbuffer
     40 objects. Depending on test case it sets some common blend state with original
     41 non-indexed functions, then some draw buffer specific state with indexed
     42 functions and finally tries to set some common blend state again with original
     43 functions. Different test cases set different state before and after setting per
     44 draw buffer state. Results are verified by rendering single quad using the
     45 framebuffer object and reading back each renderbuffer, which are then compared
     46 to reference.
     47 
     48 pre_common -group uses two RGBA8 renderbuffers. It first sets some common state
     49 and changes that same state for second draw buffer using indexed functions.
     50 
     51 post_common -group is similar to pre_common -group except it first sets the draw
     52 buffer specific state for second renderbuffer and then overrides it by using
     53 non-indexed functions.
     54 
     55 min_max_random -group uses specification minimum maximum number of draw buffers
     56 and randomizes renderbuffer formats, pre- and post-common state and per draw
     57 buffer state.
     58 
     59 max_random -group works as min_max_random -group, but uses the implementation
     60 maximum number of draw buffers.
     61