You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
74 lines
2.9 KiB
74 lines
2.9 KiB
4 months ago
|
-------------------------------------------------------------------------
|
||
|
drawElements Quality Program Test Specification
|
||
|
-----------------------------------------------
|
||
|
|
||
|
Copyright 2014 The Android Open Source Project
|
||
|
|
||
|
Licensed under the Apache License, Version 2.0 (the "License");
|
||
|
you may not use this file except in compliance with the License.
|
||
|
You may obtain a copy of the License at
|
||
|
|
||
|
http://www.apache.org/licenses/LICENSE-2.0
|
||
|
|
||
|
Unless required by applicable law or agreed to in writing, software
|
||
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||
|
See the License for the specific language governing permissions and
|
||
|
limitations under the License.
|
||
|
-------------------------------------------------------------------------
|
||
|
Vertex Attribute Binding Tests
|
||
|
|
||
|
Tests:
|
||
|
+ dEQP-GLES31.functional.vertex_attribute_binding.*
|
||
|
+ dEQP-GLES31.functional.state_query.vertex_attribute_binding.*
|
||
|
+ dEQP-GLES31.stress.vertex_attribute_binding.*
|
||
|
|
||
|
Includes:
|
||
|
+ Vertex attribute binding state setting and queries
|
||
|
+ Drawing with all attributes sourced from a single buffer
|
||
|
- Single and multiple attributes, multiple attributes sharing
|
||
|
components.
|
||
|
- Non-zero buffer offset
|
||
|
- Sourcing elements at an aligned location from a buffer with
|
||
|
a combination of non-aligned buffer offset and non-aligned
|
||
|
vertex attribute start offset.
|
||
|
+ Drawing with all attributes sourced from different binding points
|
||
|
- Basic drawing
|
||
|
- Binding point stride set to zero
|
||
|
- Binding point instance divisor
|
||
|
- Binding same buffer object to multiple binding points
|
||
|
+ Mixing vertex attribute binding and vertex attribute pointer APIs
|
||
|
- Different APIs for different vertex attributes
|
||
|
- Use vertex attribute binding API to change state set with vertex
|
||
|
attribute pointer API
|
||
|
+ Negative tests
|
||
|
- Use with default VAO
|
||
|
- BindVertexBuffer for non-gen'd buffer name
|
||
|
- Invalid values
|
||
|
+ Stress tests
|
||
|
- Sourcing elements over buffer bounds
|
||
|
- Sourcing elements at non-aligned locations
|
||
|
|
||
|
Excludes:
|
||
|
+ Use of all vertex attribute binding points
|
||
|
+ Sourcing elements from a buffer with a large stride/offset
|
||
|
+ Buffer object lifetime/validity after deleteBuffers
|
||
|
|
||
|
Description:
|
||
|
|
||
|
State query tests verify initial values, and state setting and
|
||
|
querying functions by setting random values. Modifications to
|
||
|
vertex attribute binding state after use of vertex attribute
|
||
|
pointer API is also verified.
|
||
|
|
||
|
Rendering tests set vertex attribute state using vertex attribute
|
||
|
binding API and issue a single draw command. Resulting image is
|
||
|
then verified. Mixed API rendering tests intermix both vertex
|
||
|
attribute binding and the vertexAttribPointer API commands to
|
||
|
modify the state of the same or different vertex attributes.
|
||
|
|
||
|
Stress tests source elements at invalid locations. Tests source
|
||
|
elements out of buffer range and at non-aligned locations using
|
||
|
binding point buffer offset and/or vertex attribute relative
|
||
|
offset.
|