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 	Multiple vertex attribute vertex array tests
     20 
     21 Tests:
     22  + dEQP-GLES2.functional.vertex_arrays.multiple_attributes.*
     23 
     24 Includes:
     25  + Using different attribute counts.
     26  + Multiple attributes from different sources(buffer, user pointer).
     27  + Multiple attributes with different strides
     28  + Multiple attributes with different input types.
     29 
     30 Excludes:
     31 
     32 Description:
     33 
     34 Testcases generate data that defines quads in testcase specifig format.
     35 This takes account stride, offsets and other parameters. First attribute is used
     36 as coordinates and must have two or more components to form distinct coordinates.
     37 First two components are coordinates and six subsequent attributes form two triangles
     38 which define a quad. Third and fourth component are same for each vertex in quad.
     39 Other attributes are used to define color for quad. These are generated to have
     40 same value for each vertex in quad. This data is uploaded to buffer or used from
     41 user pointer while rendering. Rendering uses simple shader that takes first
     42 attributes first two components and adds first to third component and second
     43 to fourth component, if more than two components are used. First and third component
     44 are used as x coordinate and second and fourth as y. These values are also scaled to
     45 range from -1.0 to 1.0. Other attributes are multiplied component wise and are scaled
     46 then to range from 0.0 to 1.0 and used as color. Test renders only once and result is
     47 checked against reference implementations result.
     48 
     49 Attribute count tests render simple float data from user pointer using vec2 in
     50 shader.
     51 
     52 Storage test render using three attributes from buffer or user pointer. Two component
     53 float data is used as vec2 in shader.
     54 
     55 Stride tests use three attributes with different strides. Two component float
     56 data is used as vec2 in shader. Strides test uses npot stride, pot stride and types
     57 own size as stride.
     58 
     59 Input type testcases use three attributes with different input types. Attributes
     60 are used as vec2 in shader.
     61