aosp12/external/angle/doc/ResourceLimits.md

2.1 KiB
Raw Permalink Blame History

Resource Limits

OpenGL ES 2.0 API is quite powerful but there are still some features that are optional or allow for wide variability between implementations.

Applications that need more than the minimum values for these limits should query the capabilities of the GL device and scale their usage based on the devices feature set. Failing to do so and assuming sufficient limits typically results in reduced portability.

The various implementation dependent limits can be found in Tables 6.18 6.20 of the [OpenGL ES 2.0.25 specification] (http://www.khronos.org/registry/gles/specs/2.0/es_full_spec_2.0.25.pdf).

Capabilities

Capability ES 2.0 Minimum ANGLE SM2 SM3 SM4+
GL_MAX_VERTEX_ATTRIBS 8 16
GL_MAX_VERTEX_UNIFORM_VECTORS 128 254
GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS 0 (fn1) 0 0 4
GL_MAX_VARYING_VECTORS 8 (fn1) 8 10 10
GL_MAX_FRAGMENT_UNIFORM_VECTORS 16 (fn1) 29 221 221
GL_MAX_TEXTURE_IMAGE_UNITS 8 16
GL_MAX_TEXTURE_SIZE 64 2048-16384 (fn1)
GL_MAX_CUBE_MAP_SIZE 16 2048-16384 (fn1)
GL_MAX_RENDERBUFFER_SIZE 1 2048-16384 (fn1)
GL_ALIASED_POINT_SIZE_RANGE (min, max) (1, 1) (fn2) (1,1) (1, fn2) (1, fn2)
GL_ALIASED_LINE_WIDTH_RANGE (min, max) (1, 1) (1, 1)

Notes

  • fn1: limits vary based on the underlying hardware capabilities
  • fn2: on SM3 or better hardware the max point size is D3DCAPS9.MaxPointSize