WebGLRenderingContext: getParameter() method
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
The WebGLRenderingContext.getParameter()
method of the WebGL API returns a value for the passed
parameter name.
Syntax
js
getParameter(pname)
Parameters
Return value
Depends on the parameter.
Parameter names
WebGL 1
You can query the following pname
parameters when using a
WebGLRenderingContext
.
Constant | Returned type | Description |
---|---|---|
gl.ACTIVE_TEXTURE |
GLenum |
|
gl.ALIASED_LINE_WIDTH_RANGE |
Float32Array (with 2 elements) |
|
gl.ALIASED_POINT_SIZE_RANGE |
Float32Array (with 2 elements) |
|
gl.ALPHA_BITS |
GLint |
|
gl.ARRAY_BUFFER_BINDING |
WebGLBuffer |
|
gl.BLEND |
GLboolean |
|
gl.BLEND_COLOR |
Float32Array (with 4 values) |
|
gl.BLEND_DST_ALPHA |
GLenum |
|
gl.BLEND_DST_RGB |
GLenum |
|
gl.BLEND_EQUATION |
GLenum |
|
gl.BLEND_EQUATION_ALPHA |
GLenum |
|
gl.BLEND_EQUATION_RGB |
GLenum |
|
gl.BLEND_SRC_ALPHA |
GLenum |
|
gl.BLEND_SRC_RGB |
GLenum |
|
gl.BLUE_BITS |
GLint |
|
gl.COLOR_CLEAR_VALUE |
Float32Array (with 4 values) |
|
gl.COLOR_WRITEMASK |
sequence<GLboolean >
(with 4 values)
|
|
gl.COMPRESSED_TEXTURE_FORMATS |
Uint32Array |
Returns the compressed texture formats. When using the WEBGL_compressed_texture_s3tc extension:
When using the
WEBGL_compressed_texture_etc
extension:
WEBGL_compressed_texture_pvrtc extension:
WEBGL_compressed_texture_etc1 extension:
WEBGL_compressed_texture_astc extension:
|
gl.CULL_FACE |
GLboolean |
|
gl.CULL_FACE_MODE |
GLenum |
gl.FRONT , gl.BACK or
gl.FRONT_AND_BACK . See also
cullFace
|
gl.CURRENT_PROGRAM |
WebGLProgram or null |
See
useProgram .
|
gl.DEPTH_BITS |
GLint |
|
gl.DEPTH_CLEAR_VALUE |
GLfloat |
|
gl.DEPTH_FUNC |
GLenum |
|
gl.DEPTH_RANGE |
Float32Array (with 2 elements) |
|
gl.DEPTH_TEST |
GLboolean |
|
gl.DEPTH_WRITEMASK |
GLboolean |
|
gl.DITHER |
GLboolean |
|
gl.ELEMENT_ARRAY_BUFFER_BINDING |
WebGLBuffer |
|
gl.FRAMEBUFFER_BINDING |
WebGLFramebuffer or null |
null corresponds to a binding to the default framebuffer.
See also
bindFramebuffer .
|
gl.FRONT_FACE |
GLenum |
gl.CW or gl.CCW . See also
frontFace .
|
gl.GENERATE_MIPMAP_HINT |
GLenum |
gl.FASTEST , gl.NICEST or
gl.DONT_CARE . See also
hint .
|
gl.GREEN_BITS |
GLint |
|
gl.IMPLEMENTATION_COLOR_READ_FORMAT |
GLenum |
|
gl.IMPLEMENTATION_COLOR_READ_TYPE |
GLenum |
|
gl.LINE_WIDTH |
GLfloat |
|
gl.MAX_COMBINED_TEXTURE_IMAGE_UNITS |
GLint |
|
gl.MAX_CUBE_MAP_TEXTURE_SIZE |
GLint |
|
gl.MAX_FRAGMENT_UNIFORM_VECTORS |
GLint |
|
gl.MAX_RENDERBUFFER_SIZE |
GLint |
|
gl.MAX_TEXTURE_IMAGE_UNITS |
GLint |
|
gl.MAX_TEXTURE_SIZE |
GLint |
|
gl.MAX_VARYING_VECTORS |
GLint |
|
gl.MAX_VERTEX_ATTRIBS |
GLint |
|
gl.MAX_VERTEX_TEXTURE_IMAGE_UNITS |
GLint |
|
gl.MAX_VERTEX_UNIFORM_VECTORS |
GLint |
|
gl.MAX_VIEWPORT_DIMS |
Int32Array (with 2 elements) |
|
gl.PACK_ALIGNMENT |
GLint |
|
gl.POLYGON_OFFSET_FACTOR |
GLfloat |
|
gl.POLYGON_OFFSET_FILL |
GLboolean |
|
gl.POLYGON_OFFSET_UNITS |
GLfloat |
|
gl.RED_BITS |
GLint |
|
gl.RENDERBUFFER_BINDING |
WebGLRenderbuffer or null |
See
bindRenderbuffer .
|
gl.RENDERER |
string | |
gl.SAMPLE_BUFFERS |
GLint |
|
gl.SAMPLE_COVERAGE_INVERT |
GLboolean |
|
gl.SAMPLE_COVERAGE_VALUE |
GLfloat |
|
gl.SAMPLES |
GLint |
|
gl.SCISSOR_BOX |
Int32Array (with 4 elements) |
|
gl.SCISSOR_TEST |
GLboolean |
|
gl.SHADING_LANGUAGE_VERSION |
string | |
gl.STENCIL_BACK_FAIL |
GLenum |
|
gl.STENCIL_BACK_FUNC |
GLenum |
|
gl.STENCIL_BACK_PASS_DEPTH_FAIL |
GLenum |
|
gl.STENCIL_BACK_PASS_DEPTH_PASS |
GLenum |
|
gl.STENCIL_BACK_REF |
GLint |
|
gl.STENCIL_BACK_VALUE_MASK |
GLuint |
|
gl.STENCIL_BACK_WRITEMASK |
GLuint |
|
gl.STENCIL_BITS |
GLint |
|
gl.STENCIL_CLEAR_VALUE |
GLint |
|
gl.STENCIL_FAIL |
GLenum |
|
gl.STENCIL_FUNC |
GLenum |
|
gl.STENCIL_PASS_DEPTH_FAIL |
GLenum |
|
gl.STENCIL_PASS_DEPTH_PASS |
GLenum |
|
gl.STENCIL_REF |
GLint |
|
gl.STENCIL_TEST |
GLboolean |
|
gl.STENCIL_VALUE_MASK |
GLuint |
|
gl.STENCIL_WRITEMASK |
GLuint |
|
gl.SUBPIXEL_BITS |
GLint |
|
gl.TEXTURE_BINDING_2D |
WebGLTexture or null |
|
gl.TEXTURE_BINDING_CUBE_MAP |
WebGLTexture or null |
|
gl.UNPACK_ALIGNMENT |
GLint |
|
gl.UNPACK_COLORSPACE_CONVERSION_WEBGL |
GLenum |
|
gl.UNPACK_FLIP_Y_WEBGL |
GLboolean |
|
gl.UNPACK_PREMULTIPLY_ALPHA_WEBGL |
GLboolean |
|
gl.VENDOR |
string | |
gl.VERSION |
string | |
gl.VIEWPORT |
Int32Array (with 4 elements) |
WebGL 2
You can query the following pname
parameters when using a
WebGL2RenderingContext
.
Constant | Returned type | Description |
---|---|---|
gl.COPY_READ_BUFFER_BINDING |
WebGLBuffer or null |
See
bindBuffer .
|
gl.COPY_WRITE_BUFFER_BINDING |
WebGLBuffer or null |
See
bindBuffer .
|
gl.DRAW_BUFFERi |
GLenum |
gl.BACK , gl.NONE or
gl.COLOR_ATTACHMENT{0-15} . See also
drawBuffers .
|
gl.DRAW_FRAMEBUFFER_BINDING |
WebGLFramebuffer or null |
null corresponds to a binding to the default framebuffer.
See also
bindFramebuffer .
|
gl.FRAGMENT_SHADER_DERIVATIVE_HINT |
GLenum |
gl.FASTEST , gl.NICEST or
gl.DONT_CARE . See also
hint .
|
gl.MAX_3D_TEXTURE_SIZE |
GLint |
|
gl.MAX_ARRAY_TEXTURE_LAYERS |
GLint |
|
gl.MAX_CLIENT_WAIT_TIMEOUT_WEBGL |
GLint64 |
|
gl.MAX_COLOR_ATTACHMENTS |
GLint |
|
gl.MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS |
GLint64 |
|
gl.MAX_COMBINED_UNIFORM_BLOCKS |
GLint |
|
gl.MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS |
GLint64 |
|
gl.MAX_DRAW_BUFFERS |
GLint |
|
gl.MAX_ELEMENT_INDEX |
GLint64 |
|
gl.MAX_ELEMENTS_INDICES |
GLint |
|
gl.MAX_ELEMENTS_VERTICES |
GLint |
|
gl.MAX_FRAGMENT_INPUT_COMPONENTS |
GLint |
|
gl.MAX_FRAGMENT_UNIFORM_BLOCKS |
GLint |
|
gl.MAX_FRAGMENT_UNIFORM_COMPONENTS |
GLint |
|
gl.MAX_PROGRAM_TEXEL_OFFSET |
GLint |
|
gl.MAX_SAMPLES |
GLint |
|
gl.MAX_SERVER_WAIT_TIMEOUT |
GLint64 |
|
gl.MAX_TEXTURE_LOD_BIAS |
GLfloat |
|
gl.MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS |
GLint |
|
gl.MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS |
GLint |
|
gl.MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS |
GLint |
|
gl.MAX_UNIFORM_BLOCK_SIZE |
GLint64 |
|
gl.MAX_UNIFORM_BUFFER_BINDINGS |
GLint |
|
gl.MAX_VARYING_COMPONENTS |
GLint |
|
gl.MAX_VERTEX_OUTPUT_COMPONENTS |
GLint |
|
gl.MAX_VERTEX_UNIFORM_BLOCKS |
GLint |
|
gl.MAX_VERTEX_UNIFORM_COMPONENTS |
GLint |
|
gl.MIN_PROGRAM_TEXEL_OFFSET |
GLint |
|
gl.PACK_ROW_LENGTH |
GLint |
See
pixelStorei .
|
gl.PACK_SKIP_PIXELS |
GLint |
See
pixelStorei .
|
gl.PACK_SKIP_ROWS |
GLint |
See
pixelStorei .
|
gl.PIXEL_PACK_BUFFER_BINDING |
WebGLBuffer or null |
See
bindBuffer .
|
gl.PIXEL_UNPACK_BUFFER_BINDING |
WebGLBuffer or null |
See
bindBuffer .
|
gl.RASTERIZER_DISCARD |
GLboolean |
|
gl.READ_BUFFER |
GLenum |
|
gl.READ_FRAMEBUFFER_BINDING |
WebGLFramebuffer or null |
null corresponds to a binding to the default framebuffer.
See also
bindFramebuffer .
|
gl.SAMPLE_ALPHA_TO_COVERAGE |
GLboolean |
|
gl.SAMPLE_COVERAGE |
GLboolean |
|
gl.SAMPLER_BINDING |
WebGLSampler or null |
See
bindSampler .
|
gl.TEXTURE_BINDING_2D_ARRAY |
WebGLTexture or null |
See
bindTexture .
|
gl.TEXTURE_BINDING_3D |
WebGLTexture or null |
See
bindTexture .
|
gl.TRANSFORM_FEEDBACK_ACTIVE |
GLboolean |
|
gl.TRANSFORM_FEEDBACK_BINDING |
WebGLTransformFeedback or null |
See
bindTransformFeedback .
|
gl.TRANSFORM_FEEDBACK_BUFFER_BINDING |
WebGLBuffer or null |
See
bindBuffer .
|
gl.TRANSFORM_FEEDBACK_PAUSED |
GLboolean |
|
gl.UNIFORM_BUFFER_BINDING |
WebGLBuffer or null |
See
bindBuffer .
|
gl.UNIFORM_BUFFER_OFFSET_ALIGNMENT |
GLint |
See
pixelStorei .
|
gl.UNPACK_IMAGE_HEIGHT |
GLint |
See
pixelStorei .
|
gl.UNPACK_ROW_LENGTH |
GLint |
See
pixelStorei .
|
gl.UNPACK_SKIP_IMAGES |
GLint |
See
pixelStorei .
|
gl.UNPACK_SKIP_PIXELS |
GLint |
See
pixelStorei .
|
gl.UNPACK_SKIP_ROWS |
GLint |
See
pixelStorei .
|
gl.VERTEX_ARRAY_BINDING |
WebGLVertexArrayObject or null |
See
bindVertexArray .
|
WebGL extensions
You can query the following pname
parameters when using WebGL extensions:
Constant | Returned type | Extension | Description |
---|---|---|---|
ext.MAX_TEXTURE_MAX_ANISOTROPY_EXT |
GLfloat |
EXT_texture_filter_anisotropic |
Maximum available anisotropy. |
ext.FRAGMENT_SHADER_DERIVATIVE_HINT_OES |
GLenum |
OES_standard_derivatives |
Accuracy of the derivative calculation for the GLSL built-in functions:
dFdx , dFdy , and fwidth .
|
ext.MAX_COLOR_ATTACHMENTS_WEBGL |
GLint |
WEBGL_draw_buffers |
The maximum number of framebuffer color attachment points. |
ext.MAX_DRAW_BUFFERS_WEBGL |
GLint |
WEBGL_draw_buffers |
The maximum number of draw buffers. |
ext.DRAW_BUFFER0_WEBGL |
GLenum |
WEBGL_draw_buffers |
Drawing buffers. |
ext.VERTEX_ARRAY_BINDING_OES |
WebGLVertexArrayObjectOES |
OES_vertex_array_object |
Bound vertex array object (VAO). |
ext.TIMESTAMP_EXT |
GLuint64EXT |
The current time. | |
ext.GPU_DISJOINT_EXT |
GLboolean |
EXT_disjoint_timer_query |
Returns whether or not the GPU performed any disjoint operation. |
ext.MAX_VIEWS_OVR |
GLint |
OVR_multiview2 |
Maximum number of views. |
Examples
js
gl.getParameter(gl.DITHER);
gl.getParameter(gl.VERSION);
gl.getParameter(gl.VIEWPORT);
Specifications
Specification |
---|
WebGL Specification # 5.14.3 |
WebGL 2.0 Specification # 3.7.2 |
Browser compatibility
BCD tables only load in the browser