Home | History | Annotate | Download | only in GLES31
      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     Vertex Attribute Binding Tests
     20 
     21 Tests:
     22  + dEQP-GLES31.functional.vertex_attribute_binding.*
     23  + dEQP-GLES31.functional.state_query.vertex_attribute_binding.*
     24  + dEQP-GLES31.stress.vertex_attribute_binding.*
     25 
     26 Includes:
     27  + Vertex attribute binding state setting and queries
     28  + Drawing with all attributes sourced from a single buffer
     29    - Single and multiple attributes, multiple attributes sharing
     30      components.
     31    - Non-zero buffer offset
     32    - Sourcing elements at an aligned location from a buffer with
     33      a combination of non-aligned buffer offset and non-aligned
     34      vertex attribute start offset.
     35  + Drawing with all attributes sourced from different binding points
     36    - Basic drawing
     37    - Binding point stride set to zero
     38    - Binding point instance divisor
     39    - Binding same buffer object to multiple binding points
     40  + Mixing vertex attribute binding and vertex attribute pointer APIs
     41    - Different APIs for different vertex attributes
     42    - Use vertex attribute binding API to change state set with vertex
     43      attribute pointer API
     44  + Negative tests
     45    - Use with default VAO
     46    - BindVertexBuffer for non-gen'd buffer name
     47    - Invalid values
     48  + Stress tests
     49    - Sourcing elements over buffer bounds
     50    - Sourcing elements at non-aligned locations
     51 
     52 Excludes:
     53  + Use of all vertex attribute binding points
     54  + Sourcing elements from a buffer with a large stride/offset
     55  + Buffer object lifetime/validity after deleteBuffers
     56 
     57 Description:
     58 
     59 State query tests verify initial values, and state setting and
     60 querying functions by setting random values. Modifications to
     61 vertex attribute binding state after use of vertex attribute
     62 pointer API is also verified.
     63 
     64 Rendering tests set vertex attribute state using vertex attribute
     65 binding API and issue a single draw command. Resulting image is
     66 then verified. Mixed API rendering tests intermix both vertex
     67 attribute binding and the vertexAttribPointer API commands to
     68 modify the state of the same or different vertex attributes.
     69 
     70 Stress tests source elements at invalid locations. Tests source
     71 elements out of buffer range and at non-aligned locations using
     72 binding point buffer offset and/or vertex attribute relative
     73 offset.
     74