WebGL Extensions Database

Complete reference of 38 WebGL extensions

About WebGL Extensions

WebGL extensions provide additional functionality beyond the core WebGL API. They expose hardware capabilities, enable advanced rendering techniques, and provide access to specialized GPU features.

In GPU fingerprinting, the set of available WebGL extensions is a highly distinctive identifier of the graphics hardware, driver version, and browser implementation. Different GPUs and drivers support different extensions, making this a reliable fingerprinting vector.

WebGL Versions: Extensions are categorized by WebGL 1.0 (based on OpenGL ES 2.0) and WebGL 2.0 (based on OpenGL ES 3.0). Some extensions are promoted to core features in WebGL 2.0.

Search WebGL Extensions

Try searching for: "instanced", "texture", "draw buffers", "ANGLE", "EXT"

All WebGL Extensions (38)

Extension Name WebGL Version Description
ANGLE_instanced_arrays WebGL1 The ANGLE_instanced_arrays extension is part of the WebGL API and allows to draw the same object or groups of similar objects multiple times, if they ...
EXT_blend_minmax WebGL1 The EXT_blend_minmax extension is part of the WebGL API and extends blending capabilities by adding two new blend equations: the minimum or maximum co...
EXT_color_buffer_float WebGL2 The EXT_color_buffer_float extension is part of the WebGL API and adds the ability to render to a variety of floating point formats. Makes seven sized...
EXT_color_buffer_half_float Both The EXT_color_buffer_half_float extension is part of the WebGL API and adds the ability to render to 16-bit floating-point color buffers. Provides RGB...
EXT_disjoint_timer_query WebGL1 The EXT_disjoint_timer_query extension is part of the WebGL API and provides a way to measure the duration of GL commands without stalling the renderi...
EXT_float_blend Both The EXT_float_blend extension is part of the WebGL API and allows blending and draw buffers with 32-bit floating-point components. Automatically enabl...
EXT_frag_depth WebGL1 The EXT_frag_depth extension is part of the WebGL API and enables setting a depth value of a fragment from within the fragment shader. Provides the gl...
EXT_shader_texture_lod WebGL1 The EXT_shader_texture_lod extension is part of the WebGL API and adds texture functions to GLSL shaders providing explicit control of LOD (Level of D...
EXT_sRGB WebGL1 The EXT_sRGB extension is part of the WebGL API and adds sRGB support to textures and framebuffers. Provides constants SRGB_EXT, SRGB_ALPHA_EXT, SRGB8...
EXT_texture_compression_bptc Both The EXT_texture_compression_bptc extension is part of the WebGL API and exposes 4 BPTC compressed texture formats (BC7 and BC6H in DirectX). Provides ...
EXT_texture_compression_rgtc Both The EXT_texture_compression_rgtc extension is part of the WebGL API and exposes 4 RGTC compressed texture formats. RGTC is a block-based texture compr...
EXT_texture_filter_anisotropic Both The EXT_texture_filter_anisotropic extension is part of the WebGL API and exposes two constants for anisotropic filtering (AF). Improves the quality o...
EXT_texture_norm16 WebGL2 The EXT_texture_norm16 extension is part of the WebGL API and provides 16-bit signed normalized and unsigned normalized formats for textures, renderbu...
KHR_parallel_shader_compile Both The KHR_parallel_shader_compile extension is part of the WebGL API and enables non-blocking poll operations for compile/link status. Provides COMPLETI...
OES_draw_buffers_indexed WebGL2 The OES_draw_buffers_indexed extension is part of the WebGL API and enables different blend options when writing to multiple color buffers simultaneou...
OES_element_index_uint WebGL1 The OES_element_index_uint extension is part of the WebGL API and adds support for gl.UNSIGNED_INT types to drawElements(). This allows using 32-bit u...
OES_fbo_render_mipmap WebGL1 The OES_fbo_render_mipmap extension is part of the WebGL API and makes it possible to attach any level of a texture to a framebuffer object for render...
OES_standard_derivatives WebGL1 The OES_standard_derivatives extension is part of the WebGL API and adds the GLSL derivative functions dFdx, dFdy, and fwidth to fragment shaders. The...
OES_texture_float WebGL1 The OES_texture_float extension is part of the WebGL API and exposes floating-point pixel types for textures. The type parameter of texImage2D() and t...
OES_texture_float_linear WebGL1 The OES_texture_float_linear extension is part of the WebGL API and allows LINEAR and LINEAR_MIPMAP_* magnification/minification filters to be used wi...
OES_texture_half_float WebGL1 The OES_texture_half_float extension is part of the WebGL API and adds texture formats with 16-bit (half float) and 32-bit floating-point components. ...
OES_texture_half_float_linear WebGL1 The OES_texture_half_float_linear extension is part of the WebGL API and allows LINEAR and LINEAR_MIPMAP_* magnification/minification filters to be us...
OES_vertex_array_object WebGL1 The OES_vertex_array_object extension is part of the WebGL API and provides vertex array objects (VAOs) which encapsulate vertex array states. Provide...
OVR_multiview2 WebGL2 The OVR_multiview2 extension is part of the WebGL API and adds support for rendering into multiple views simultaneously, especially useful for VR/WebX...
WEBGL_blend_func_extended Both The WEBGL_blend_func_extended extension is part of the WebGL API and provides extended blending capabilities with dual-source blending. Enables advanc...
WEBGL_color_buffer_float WebGL1 The WEBGL_color_buffer_float extension is part of the WebGL API and adds the ability to render to 32-bit floating-point color buffers. Provides RGBA32...
WEBGL_compressed_texture_astc Both The WEBGL_compressed_texture_astc extension is part of the WebGL API and exposes ASTC (Adaptive Scalable Texture Compression) compressed texture forma...
WEBGL_compressed_texture_etc Both The WEBGL_compressed_texture_etc extension is part of the WebGL API and exposes 10 ETC/EAC compressed texture formats. Provides formats like COMPRESSE...
WEBGL_compressed_texture_etc1 Both The WEBGL_compressed_texture_etc1 extension is part of the WebGL API and exposes the ETC1 compressed texture format. Provides COMPRESSED_RGB_ETC1_WEBG...
WEBGL_compressed_texture_pvrtc Both The WEBGL_compressed_texture_pvrtc extension is part of the WebGL API and exposes four PVRTC compressed texture formats. Provides COMPRESSED_RGB_PVRTC...
WEBGL_compressed_texture_s3tc Both The WEBGL_compressed_texture_s3tc extension is part of the WebGL API and exposes four S3TC compressed texture formats. S3TC is a group of texture comp...
WEBGL_compressed_texture_s3tc_srgb Both The WEBGL_compressed_texture_s3tc_srgb extension is part of the WebGL API and exposes four S3TC compressed texture formats for the sRGB colorspace. Pr...
WEBGL_debug_renderer_info Both The WEBGL_debug_renderer_info extension is part of the WebGL API and exposes two constants with information about the GPU: UNMASKED_VENDOR_WEBGL retur...
WEBGL_debug_shaders Both The WEBGL_debug_shaders extension is part of the WebGL API and exposes the getTranslatedShaderSource() method which returns translated shader source c...
WEBGL_depth_texture WebGL1 The WEBGL_depth_texture extension is part of the WebGL API and defines 2D depth and depth-stencil textures. Adds the UNSIGNED_INT_24_8_WEBGL constant ...
WEBGL_draw_buffers WebGL1 The WEBGL_draw_buffers extension is part of the WebGL API and enables a fragment shader to write to several textures, useful for deferred shading and ...
WEBGL_lose_context Both The WEBGL_lose_context extension is part of the WebGL API and exposes functions to simulate losing and restoring a WebGLRenderingContext. Use loseCont...
WEBGL_multi_draw Both The WEBGL_multi_draw extension is part of the WebGL API and allows rendering more than one primitive with a single function call. Provides multiDrawAr...
WebGL 1.0 vs WebGL 2.0 Extensions

WebGL 1.0 Extensions: Required for features not in core API (instancing, multiple render targets, etc.)

WebGL 2.0 Extensions: Many WebGL 1.0 extensions are built into WebGL 2.0 core. WebGL 2.0 extensions add advanced features like floating-point rendering, timer queries, and parallel shader compilation.

Promoted Features: ANGLE_instanced_arrays, WEBGL_draw_buffers, OES_vertex_array_object, OES_standard_derivatives, and others are core features in WebGL 2.0.