Merge "Use de::ArrayBuffer, not raw arrays, in sglrReferenceContext."
[platform/upstream/VK-GL-CTS.git] / doc / testspecs / GLES31 / functional.texture_buffers.txt
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     GLES3.1 texture buffer object tests.
20
21 Tests:
22  + dEQP-GLES31.functional.texture_buffer.*
23
24 Includes:
25  + Rendering
26         - As vertex texture
27         - As fragment texture
28         - As vertex array
29         - As index array
30         - All combinations of above
31  + Different buffer sizes
32         - Including larger than max texture size
33
34  + Different offsets
35  + Different texture buffer sizes
36
37  + Modifications
38         - glBufferData
39         - glBufferSubData
40         - glMapBufferRange with write-only and read-write
41
42 Excludes:
43  + Reading pixels to buffer
44  + Transform feedback
45  + Negative test
46
47 Description:
48
49 Rendering tests create a texture buffer object and render to the default
50 framebuffer using the texture buffer as different data sources. The texture
51 buffer object is used as vertex array, index array, vertex texture and fragment
52 texture. Rendering using the texture buffer object simultaneously in different
53 ways is also tested.
54
55 Modifying tests create a texture buffer object, modify it and render it to the
56 default framebuffer using it as fragment texture.
57
58 Modify render tests will create texture buffer object, modify it and render it
59 to the default framebuffer.
60
61 Render modify tests will create a tests buffer object render it to default
62 framebuffer, modify it and render it again to default framebuffer as fragment
63 texture.
64
65 All textures use RGBA8 format and buffer data is always used as unsigned bytes.
66 Used values for bytes are also limited to simplify verification. Verification
67 is always performed at the end of the test.