1# Resource Limits
2
3OpenGL ES 2.0 API is quite powerful but there are still some features that are
4optional or allow for wide variability between implementations.
5
6Applications that need more than the minimum values for these limits should
7query the capabilities of the GL device and scale their usage based on the
8device’s feature set. Failing to do so and assuming sufficient limits typically
9results in reduced portability.
10
11The various implementation dependent limits can be found in Tables 6.18 – 6.20
12of the [OpenGL ES 2.0.25 specification]
13(http://www.khronos.org/registry/gles/specs/2.0/es_full_spec_2.0.25.pdf).
14
15# Capabilities
16
17Capability                                 | ES 2.0 Minimum | ANGLE            | SM2   | SM3      | SM4+
18:----------------------------------------- | :------------- | :--------------- | :---- | :------- | :-------
19GL\_MAX\_VERTEX\_ATTRIBS                   | 8              | 16               |       |          |
20GL\_MAX\_VERTEX\_UNIFORM\_VECTORS          | 128            | 254              |       |          |
21GL\_MAX\_VERTEX\_TEXTURE\_IMAGE\_UNITS     | 0              | (fn1)            | 0     | 0        | 4
22GL\_MAX\_VARYING\_VECTORS                  | 8              | (fn1)            | 8     | 10       | 10
23GL\_MAX\_FRAGMENT\_UNIFORM\_VECTORS        | 16             | (fn1)            | 29    | 221      | 221
24GL\_MAX\_TEXTURE\_IMAGE\_UNITS             | 8              | 16               |       |          |
25GL\_MAX\_TEXTURE\_SIZE                     | 64             | 2048-16384 (fn1) |       |          |
26GL\_MAX\_CUBE\_MAP\_SIZE                   | 16             | 2048-16384 (fn1) |       |          |
27GL\_MAX\_RENDERBUFFER\_SIZE                | 1              | 2048-16384 (fn1) |       |          |
28GL\_ALIASED\_POINT\_SIZE\_RANGE (min, max) | (1, 1)         | (fn2)            | (1,1) | (1, fn2) | (1, fn2)
29GL\_ALIASED\_LINE\_WIDTH\_RANGE (min, max) | (1, 1)         | (1, 1)           |       |          |
30
31## Notes
32
33*   fn1: limits vary based on the underlying hardware capabilities
34*   fn2: on SM3 or better hardware the max point size is D3DCAPS9.MaxPointSize
35