xref: /aosp_15_r20/external/angle/extensions/ANGLE_client_arrays.txt (revision 8975f5c5ed3d1c378011245431ada316dfb6f244)
1Name
2
3    ANGLE_client_arrays
4
5Name Strings
6
7    GL_ANGLE_client_arrays
8
9Contributors
10
11    Geoff Lang
12
13Contact
14
15    Geoff Lang (geofflang 'at' google.com)
16
17Notice
18
19    Copyright (c) 2016 The Khronos Group Inc. Copyright terms at
20        http://www.khronos.org/registry/speccopyright.html
21
22Status
23
24    Draft
25
26Version
27
28    Version 1, February 13, 2016
29
30Number
31
32    OpenGL ES Extension #??
33
34Dependencies
35
36    Requires OpenGL ES 2.0
37
38    Written against the OpenGL ES 2.0 specification.
39
40Overview
41
42    This extension allows the OpenGL context to indicate if it supports drawing
43    with client-side vertex or index data.  Client-side can be very inefficient
44    and unsafe, it is convenient for some users to completely disable its usage.
45
46New Procedures and Functions
47
48    None
49
50New Tokens
51
52    Accepted by the <cap> parameter to IsEnabled and the <pname> parameter to
53    GetBooleanv, GetIntegerv, GetFloatv, and GetInteger64v:
54
55    CLIENT_ARRAYS_ANGLE                 0x93AA
56
57Additions to the OpenGL ES Specification
58
59    Add after paragraph 3 of section 2.8 "Vertex Arrays":
60
61    If VertexAttribPointer is called while zero is bound to the ARRAY_BUFFER
62    buffer object binding point, the pointer argument is not NULL, and
63    CLIENT_ARRAYS_ANGLE is TRUE, an INVALID_OPERATION error is generated.
64
65    Add to the end of section 2.9.1 "Vertex Arrays in Buffer Objects":
66
67    Rendering commands that draw more than 0 primitives using enabled vertex
68    attributes with no buffer bound when CLIENT_ARRAYS_ANGLE is TRUE generate
69    an INVALID_OPERATION error.
70
71    Add to the end of section 2.9.2 "Array Indices in Buffer Objects":
72
73    Rendering commands that draw using index data when no buffer is bound to
74    the ELEMENT_ARRAY_BUFFER binding point when CLIENT_ARRAYS_ANGLE is TRUE
75    generate an INVALID_OPERATION error.
76
77New State
78
79    Modify Table 6.22, Miscellaneous
80
81    Add:
82
83                                          Initial
84    Get Value            Type Get Command Value   Description
85    -------------------- ---- ----------- ------- ---------------------
86    CLIENT_ARRAYS_ANGLE  B    IsEnabled   TRUE    Client arrays enabled
87
88Conformance Tests
89
90    TBD
91
92Issues
93
94    None
95
96Revision History
97
98    Rev.    Date         Author                 Changes
99    ----  -------------  ---------              ----------------------------------------
100      2   Jun 12, 2018   Brandon Jones (Intel)  Remove primitives > 0 requirement to error
101                                                when doing an indexed draw with no bound
102                                                ELEMENT_ARRAY_BUFFER
103      1   Feb 13, 2016   geofflang              Initial version
104