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.
Note: This feature is available in Web Workers.
The WebGLRenderingContext.getParameter()
method of the WebGL API returns a value for the passed
parameter name.
Syntax
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 |
EXT_disjoint_timer_query |
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
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