Khronos

WebGL

WebGL Extension Registry

Overview

The WebGL extension registry contains specifications for extensions to the core WebGL API. Most of these extensions are incorporated directly from the OpenGL ES or OpenGL extension registries, and refer to those extensions for their behavioral definition. Because WebGL extensions are specified as Web IDL interfaces, each specification also includes the IDL to which each implementation will comply.

An extension template is available for the submission of new proposed extensions. New extension proposals should be emailed to the public WebGL mailing list. When writing a new extension specification, it is recommended to check out the public WebGL repository. See the WebGL wiki page Using Github to contribute. The extension registry files are located under extensions/.

Each extension object is fetched from the WebGLRenderingContextBase by passing the name of the extension to the getExtension method, i.e.: context.getExtension("OES_texture_float").

Extensions which are marked as promoted to core or removed in a certain version of the WebGL API must not be supported in an implementation of that or newer version of the WebGL API.

Naming conventions

WebGL API extensions may derive from many sources, and the naming of each extension reflects its origin and intent.

Extension Development Process

Extensions move through four states during their development: proposed, draft, community approved, and Khronos ratified.

Khronos ratified WebGL Extensions

By Number

By Name

  1. OES_texture_float
  2. OES_texture_half_float
  3. WEBGL_lose_context
  4. OES_standard_derivatives
  5. OES_vertex_array_object
  6. WEBGL_debug_renderer_info
  7. WEBGL_debug_shaders
  8. WEBGL_compressed_texture_s3tc
  9. WEBGL_depth_texture
  10. OES_element_index_uint
  11. EXT_texture_filter_anisotropic
  12. WEBGL_draw_buffers
  13. ANGLE_instanced_arrays
  14. OES_texture_float_linear
  15. OES_texture_half_float_linear
  1. ANGLE_instanced_arrays
  2. EXT_texture_filter_anisotropic
  3. OES_element_index_uint
  4. OES_standard_derivatives
  5. OES_texture_float
  6. OES_texture_float_linear
  7. OES_texture_half_float
  8. OES_texture_half_float_linear
  9. OES_vertex_array_object
  10. WEBGL_compressed_texture_s3tc
  11. WEBGL_debug_renderer_info
  12. WEBGL_debug_shaders
  13. WEBGL_depth_texture
  14. WEBGL_draw_buffers
  15. WEBGL_lose_context

Community approved WebGL Extensions

By Number

By Name

  1. WEBGL_compressed_texture_atc
  2. WEBGL_compressed_texture_pvrtc
  3. EXT_frag_depth
  4. EXT_sRGB
  5. WEBGL_compressed_texture_etc1
  6. EXT_blend_minmax
  7. EXT_shader_texture_lod
  1. EXT_blend_minmax
  2. EXT_frag_depth
  3. EXT_sRGB
  4. EXT_shader_texture_lod
  5. WEBGL_compressed_texture_atc
  6. WEBGL_compressed_texture_etc1
  7. WEBGL_compressed_texture_pvrtc

Draft WebGL Extensions

By Number

By Name

  1. EXT_color_buffer_half_float
  2. WEBGL_color_buffer_float
  3. WEBGL_shared_resources
  4. WEBGL_security_sensitive_resources
  5. EXT_disjoint_timer_query
  1. EXT_color_buffer_half_float
  2. EXT_disjoint_timer_query
  3. WEBGL_color_buffer_float
  4. WEBGL_security_sensitive_resources
  5. WEBGL_shared_resources

Proposed WebGL Extensions (do not implement!)

By Name

Recent WebGL Extension Revisions

  1. OES_texture_float : revision 8 on
  2. OES_texture_half_float : revision 8 on
  3. WEBGL_color_buffer_float : revision 6 on
  4. ANGLE_instanced_arrays : revision 8 on
  5. WEBGL_draw_buffers : revision 7 on
  6. OES_texture_float_linear : revision 5 on
  7. OES_texture_half_float_linear : revision 5 on
  8. WEBGL_debug_renderer_info : revision 8 on
  9. WEBGL_debug_shaders : revision 8 on
  10. ANGLE_instanced_arrays : revision 7 on
Atom feed Recent Revisions