glGetShaderPrecisionFormat — retrieve the range and precision for numeric formats supported by the shader compiler
void glGetShaderPrecisionFormat(
|
GLenum shaderType, |
GLenum precisionType, | |
GLint *range, | |
GLint *precision) ; |
shaderType
Specifies the type of shader whose precision to query. shaderType
must be GL_VERTEX_SHADER
or GL_FRAGMENT_SHADER
.
precisionType
Specifies the numeric format whose precision and range to query.
range
Specifies the address of array of two integers into which encodings of the implementation's numeric range are returned.
precision
Specifies the address of an integer into which the numeric precision of the implementation is written.
glGetShaderPrecisionFormat
retrieves the numeric range and precision for
the implementation's representation of quantities in different numeric formats in specified
shader type. shaderType
specifies the type of shader for which the numeric
precision and range is to be retrieved and must be one of GL_VERTEX_SHADER
or GL_FRAGMENT_SHADER
. precisionType
specifies the
numeric format to query and must be one of GL_LOW_FLOAT
, GL_MEDIUM_FLOAT
GL_HIGH_FLOAT
, GL_LOW_INT
, GL_MEDIUM_INT
,
or GL_HIGH_INT
.
range
points to an array of two integers into which the format's numeric range
will be returned. If min and max are the smallest values representable in the format, then the values
returned are defined to be: range
[0] = floor(log2(|min|)) and
range
[1] = floor(log2(|max|)).
precision
specifies the address of an integer into which will be written
the log2 value of the number of bits of precision of the format. If the smallest representable
value greater than 1 is 1 + eps, then the integer addressed by precision
will contain floor(-log2(eps)).
GL_INVALID_ENUM
is generated if shaderType
or
precisionType
is not an accepted value.
OpenGL ES API Version | ||||
---|---|---|---|---|
Function Name | 2.0 | 3.0 | 3.1 | 3.2 |
glGetShaderPrecisionFormat | ✔ | ✔ | ✔ | ✔ |
Copyright © 2010-2015 Khronos Group. This material may be distributed subject to the terms and conditions set forth in the Open Publication License, v 1.0, 8 June 1999. https://opencontent.org/openpub/.