WebGLRenderingContext.isEnabled()

The WebGLRenderingContext.isEnabled() method of the WebGL API tests whether a specific WebGL capability is enabled or not for this context.

By default, all capabilities except gl.DITHER are disabled.

Syntax

void gl.isEnabled(cap);

Parameters

cap
A GLenum specifying which WebGL capability to test. Possible values:
Constant Description
gl.BLEND Blending of the computed fragment color values. See WebGLRenderingContext.blendFunc().
gl.CULL_FACE Culling of polygons. See WebGLRenderingContext.cullFace().
gl.DEPTH_TEST Depth comparisons and updates to the depth buffer. See WebGLRenderingContext.depthFunc().
gl.DITHER Dithering of color components before they get written to the color buffer.
gl.POLYGON_OFFSET_FILL Adding an offset to depth values of polygon's fragments. See WebGLRenderingContext.polygonOffset().
gl.SAMPLE_ALPHA_TO_COVERAGE Computation of a temporary coverage value determined by the alpha value.
gl.SAMPLE_COVERAGE ANDing the fragment's coverage with the temporary coverage value. See WebGLRenderingContext.sampleCoverage().
gl.SCISSOR_TEST Scissor test that discards fragments that are outside of the scissor rectangle. See WebGLRenderingContext.scissor().
gl.STENCIL_TEST Stencil testing and updates to the stencil buffer. See WebGLRenderingContext.stencilFunc().
When using a WebGL 2 context, the following values are available additionally:
Constant Description
gl.RASTERIZER_DISCARD Primitives are discarded immediately before the rasterization stage, but after the optional transform feedback stage. gl.clear() commands are ignored.

Return value

A GLboolean indicating if the capability cap is enabled (true), or not (false).

Examples

gl.isEnabled(gl.STENCIL_TEST); 
// false

To activate or deactivate a specific capability, use the WebGLRenderingContext.enable() and  WebGLRenderingContext.disable() methods:

gl.enable(gl.STENCIL_TEST);
gl.disable(gl.STENCIL_TEST);

Specifications

Specification Status Comment
WebGL 1.0
The definition of 'isEnabled' in that specification.
Recommendation Initial definition for WebGL.
OpenGL ES 2.0
The definition of 'glIsEnabled' in that specification.
Standard Man page of the (similar) OpenGL ES 2.0 API.
WebGL 2.0
The definition of 'isEnabled' in that specification.
Editor's Draft Updated definition for WebGL 2.
OpenGL ES 3.0
The definition of 'glIsEnabled' in that specification.
Standard Man page of the (similar) OpenGL ES 3.0 API.

Browser compatibility

Feature Chrome Edge Firefox Internet Explorer Opera Safari Servo
Basic Support9124.011125.1No support
WebGL2No support1No support51.0No supportNo supportNo supportNo support
Feature Android Chrome for Android Edge Mobile Firefox for Android IE Mobile Opera Mobile Safari Mobile
Basic Support(Yes)25(Yes)4.0128.1
WebGL2No supportNo support(Yes)51.0No supportNo support

1. To use an experimental implementation of WebGL 2 in Chrome, you have to start Chrome with the runtime flag --enable-unsafe-es3-apis.

See also

Document Tags and Contributors

 Contributors to this page: teoli, fscholz
 Last updated by: teoli,