diff --git a/features/webgl2-context-colorspace.yml b/features/webgl2-context-colorspace.yml new file mode 100644 index 00000000000..aaf1daf6393 --- /dev/null +++ b/features/webgl2-context-colorspace.yml @@ -0,0 +1,6 @@ +name: WebGL2 Color Space +description: Specifies the color space to be used for the context. +spec: https://registry.khronos.org/webgl/specs/latest/2.0/ +compat_features: + - api.WebGL2RenderingContext.drawingBufferColorSpace + - api.WebGL2RenderingContext.unpackColorSpace diff --git a/features/webgl2-context-colorspace.yml.dist b/features/webgl2-context-colorspace.yml.dist new file mode 100644 index 00000000000..4466ed721a7 --- /dev/null +++ b/features/webgl2-context-colorspace.yml.dist @@ -0,0 +1,29 @@ +# Generated from: webgl2-context-colorspace.yml +# Do not edit this file by hand. Edit the source file instead! + +status: + baseline: false + support: + chrome: "104" + chrome_android: "104" + edge: "104" +compat_features: + # baseline: low + # baseline_low_date: 2024-06-11 + # support: + # chrome: "104" + # chrome_android: "104" + # edge: "104" + # firefox: "127" + # firefox_android: "127" + # safari: "16.4" + # safari_ios: "16.4" + - api.WebGL2RenderingContext.drawingBufferColorSpace + + # ⬇️ Same status as overall feature ⬇️ + # baseline: false + # support: + # chrome: "104" + # chrome_android: "104" + # edge: "104" + - api.WebGL2RenderingContext.unpackColorSpace diff --git a/features/webgl2-context-desynchronized.yml b/features/webgl2-context-desynchronized.yml new file mode 100644 index 00000000000..902f1afb9b7 --- /dev/null +++ b/features/webgl2-context-desynchronized.yml @@ -0,0 +1,5 @@ +name: WebGL2 `desynchronized` parameter +description: Reduces latency by desynchronizing the canvas paint cycle from the event loop. +spec: https://registry.khronos.org/webgl/specs/latest/2.0/ +compat_features: + - api.HTMLCanvasElement.getContext.webgl2_context.options_desynchronized_parameter diff --git a/features/webgl2-context-desynchronized.yml.dist b/features/webgl2-context-desynchronized.yml.dist new file mode 100644 index 00000000000..c6f25e5112c --- /dev/null +++ b/features/webgl2-context-desynchronized.yml.dist @@ -0,0 +1,11 @@ +# Generated from: webgl2-context-desynchronized.yml +# Do not edit this file by hand. Edit the source file instead! + +status: + baseline: false + support: + chrome: "81" + chrome_android: "75" + edge: "79" +compat_features: + - api.HTMLCanvasElement.getContext.webgl2_context.options_desynchronized_parameter diff --git a/features/webgl2-context-drawingbuffer.yml b/features/webgl2-context-drawingbuffer.yml new file mode 100644 index 00000000000..6f54c5bd450 --- /dev/null +++ b/features/webgl2-context-drawingbuffer.yml @@ -0,0 +1,6 @@ +name: WebGL2 drawing buffer +description: Provides access to the underlying storage buffer. +spec: https://registry.khronos.org/webgl/specs/latest/2.0/#2.2 +compat_features: + - api.WebGL2RenderingContext.drawingBufferFormat + - api.WebGL2RenderingContext.drawingBufferStorage diff --git a/features/webgl2-context-drawingbuffer.yml.dist b/features/webgl2-context-drawingbuffer.yml.dist new file mode 100644 index 00000000000..33b15d6987a --- /dev/null +++ b/features/webgl2-context-drawingbuffer.yml.dist @@ -0,0 +1,12 @@ +# Generated from: webgl2-context-drawingbuffer.yml +# Do not edit this file by hand. Edit the source file instead! + +status: + baseline: false + support: + chrome: "122" + chrome_android: "122" + edge: "122" +compat_features: + - api.WebGL2RenderingContext.drawingBufferFormat + - api.WebGL2RenderingContext.drawingBufferStorage diff --git a/features/webgl2-context-powerpreference.yml b/features/webgl2-context-powerpreference.yml new file mode 100644 index 00000000000..fc6250c4bc7 --- /dev/null +++ b/features/webgl2-context-powerpreference.yml @@ -0,0 +1,5 @@ +name: WebGL2 `powerPreference` parameter +description: Allows the developer to prioritize rendering performance or power savings. +spec: https://registry.khronos.org/webgl/specs/latest/2.0/ +compat_features: + - api.HTMLCanvasElement.getContext.webgl2_context.options_powerPreference_parameter diff --git a/features/webgl2-context-powerpreference.yml.dist b/features/webgl2-context-powerpreference.yml.dist new file mode 100644 index 00000000000..63855e528bd --- /dev/null +++ b/features/webgl2-context-powerpreference.yml.dist @@ -0,0 +1,13 @@ +# Generated from: webgl2-context-powerpreference.yml +# Do not edit this file by hand. Edit the source file instead! + +status: + baseline: false + support: + chrome: "75" + chrome_android: "75" + edge: "79" + safari: "15" + safari_ios: "15" +compat_features: + - api.HTMLCanvasElement.getContext.webgl2_context.options_powerPreference_parameter diff --git a/features/draft/spec/webgl2.yml b/features/webgl2.yml similarity index 88% rename from features/draft/spec/webgl2.yml rename to features/webgl2.yml index 56e8f495327..32d170a951e 100644 --- a/features/draft/spec/webgl2.yml +++ b/features/webgl2.yml @@ -1,12 +1,9 @@ -draft_date: 2024-07-11 -name: WebGL 2.0 Specification -description: TODO +name: WebGL2 2D and 3D Graphics +description: WebGL2 is a JavaScript API for rendering high-performance interactive 3D and 2D graphics and support for much of the OpenGL ES 3.0 feature set. spec: https://registry.khronos.org/webgl/specs/latest/2.0/ compat_features: - api.HTMLCanvasElement.getContext.webgl2_context.options_alpha_parameter - - api.HTMLCanvasElement.getContext.webgl2_context.options_desynchronized_parameter - api.HTMLCanvasElement.getContext.webgl2_context.options_failIfMajorPerformanceCaveat_parameter - - api.HTMLCanvasElement.getContext.webgl2_context.options_powerPreference_parameter - api.WebGL2RenderingContext - api.WebGL2RenderingContext.activeTexture - api.WebGL2RenderingContext.attachShader @@ -84,10 +81,7 @@ compat_features: - api.WebGL2RenderingContext.drawBuffers - api.WebGL2RenderingContext.drawElements - api.WebGL2RenderingContext.drawElementsInstanced - - api.WebGL2RenderingContext.drawingBufferColorSpace - - api.WebGL2RenderingContext.drawingBufferFormat - api.WebGL2RenderingContext.drawingBufferHeight - - api.WebGL2RenderingContext.drawingBufferStorage - api.WebGL2RenderingContext.drawingBufferWidth - api.WebGL2RenderingContext.drawRangeElements - api.WebGL2RenderingContext.enable @@ -159,7 +153,6 @@ compat_features: - api.WebGL2RenderingContext.linkProgram - api.WebGL2RenderingContext.pauseTransformFeedback - api.WebGL2RenderingContext.pixelStorei - - api.WebGL2RenderingContext.pixelStorei - api.WebGL2RenderingContext.polygonOffset - api.WebGL2RenderingContext.readBuffer - api.WebGL2RenderingContext.readPixels @@ -220,7 +213,6 @@ compat_features: - api.WebGL2RenderingContext.uniformMatrix4fv - api.WebGL2RenderingContext.uniformMatrix4x2fv - api.WebGL2RenderingContext.uniformMatrix4x3fv - - api.WebGL2RenderingContext.unpackColorSpace - api.WebGL2RenderingContext.useProgram - api.WebGL2RenderingContext.validateProgram - api.WebGL2RenderingContext.vertexAttrib1f @@ -241,25 +233,6 @@ compat_features: - api.WebGL2RenderingContext.viewport - api.WebGL2RenderingContext.waitSync - api.WebGLQuery - - api.WebGLRenderingContext.bindBuffer - - api.WebGLRenderingContext.bindFramebuffer - - api.WebGLRenderingContext.bindTexture - - api.WebGLRenderingContext.checkFramebufferStatus - - api.WebGLRenderingContext.getBufferParameter - - api.WebGLRenderingContext.getFramebufferAttachmentParameter - - api.WebGLRenderingContext.getParameter - - api.WebGLRenderingContext.getProgramParameter - - api.WebGLRenderingContext.getRenderbufferParameter - - api.WebGLRenderingContext.getTexParameter - - api.WebGLRenderingContext.getUniform - - api.WebGLRenderingContext.getVertexAttrib - - api.WebGLRenderingContext.isEnabled - - api.WebGLRenderingContext.pixelStorei - - api.WebGLRenderingContext.renderbufferStorage - - api.WebGLRenderingContext.texImage2D - - api.WebGLRenderingContext.texParameterf - - api.WebGLRenderingContext.texParameteri - - api.WebGLRenderingContext.texSubImage2D - api.WebGLSampler - api.WebGLSync - api.WebGLTransformFeedback diff --git a/features/draft/spec/webgl2.yml.dist b/features/webgl2.yml.dist similarity index 83% rename from features/draft/spec/webgl2.yml.dist rename to features/webgl2.yml.dist index 5946f423f44..fbba738a773 100644 --- a/features/draft/spec/webgl2.yml.dist +++ b/features/webgl2.yml.dist @@ -2,43 +2,18 @@ # Do not edit this file by hand. Edit the source file instead! status: - baseline: false + baseline: high + baseline_low_date: 2021-09-20 + baseline_high_date: 2024-03-20 support: - chrome: "122" - chrome_android: "122" - edge: "122" + chrome: "56" + chrome_android: "58" + edge: "79" + firefox: "51" + firefox_android: "51" + safari: "15" + safari_ios: "15" compat_features: - # baseline: high - # baseline_low_date: 2015-07-29 - # baseline_high_date: 2018-01-29 - # support: - # chrome: "9" - # chrome_android: "25" - # edge: "12" - # firefox: "4" - # firefox_android: "4" - # safari: "5.1" - # safari_ios: "8" - - api.WebGLRenderingContext.bindBuffer - - api.WebGLRenderingContext.bindFramebuffer - - api.WebGLRenderingContext.bindTexture - - api.WebGLRenderingContext.checkFramebufferStatus - - api.WebGLRenderingContext.getBufferParameter - - api.WebGLRenderingContext.getFramebufferAttachmentParameter - - api.WebGLRenderingContext.getParameter - - api.WebGLRenderingContext.getProgramParameter - - api.WebGLRenderingContext.getRenderbufferParameter - - api.WebGLRenderingContext.getTexParameter - - api.WebGLRenderingContext.getUniform - - api.WebGLRenderingContext.getVertexAttrib - - api.WebGLRenderingContext.isEnabled - - api.WebGLRenderingContext.pixelStorei - - api.WebGLRenderingContext.renderbufferStorage - - api.WebGLRenderingContext.texImage2D - - api.WebGLRenderingContext.texParameterf - - api.WebGLRenderingContext.texParameteri - - api.WebGLRenderingContext.texSubImage2D - # baseline: high # baseline_low_date: 2021-09-20 # baseline_high_date: 2024-03-20 @@ -53,6 +28,7 @@ compat_features: - api.HTMLCanvasElement.getContext.webgl2_context.options_alpha_parameter - api.HTMLCanvasElement.getContext.webgl2_context.options_failIfMajorPerformanceCaveat_parameter + # ⬇️ Same status as overall feature ⬇️ # baseline: high # baseline_low_date: 2021-09-20 # baseline_high_date: 2024-03-20 @@ -213,7 +189,6 @@ compat_features: - api.WebGL2RenderingContext.linkProgram - api.WebGL2RenderingContext.pauseTransformFeedback - api.WebGL2RenderingContext.pixelStorei - - api.WebGL2RenderingContext.pixelStorei - api.WebGL2RenderingContext.polygonOffset - api.WebGL2RenderingContext.readBuffer - api.WebGL2RenderingContext.readPixels @@ -298,47 +273,3 @@ compat_features: - api.WebGLSync - api.WebGLTransformFeedback - api.WebGLVertexArrayObject - - # baseline: low - # baseline_low_date: 2024-06-11 - # support: - # chrome: "104" - # chrome_android: "104" - # edge: "104" - # firefox: "127" - # firefox_android: "127" - # safari: "16.4" - # safari_ios: "16.4" - - api.WebGL2RenderingContext.drawingBufferColorSpace - - # baseline: false - # support: - # chrome: "75" - # chrome_android: "75" - # edge: "79" - # safari: "15" - # safari_ios: "15" - - api.HTMLCanvasElement.getContext.webgl2_context.options_powerPreference_parameter - - # baseline: false - # support: - # chrome: "81" - # chrome_android: "75" - # edge: "79" - - api.HTMLCanvasElement.getContext.webgl2_context.options_desynchronized_parameter - - # baseline: false - # support: - # chrome: "104" - # chrome_android: "104" - # edge: "104" - - api.WebGL2RenderingContext.unpackColorSpace - - # ⬇️ Same status as overall feature ⬇️ - # baseline: false - # support: - # chrome: "122" - # chrome_android: "122" - # edge: "122" - - api.WebGL2RenderingContext.drawingBufferFormat - - api.WebGL2RenderingContext.drawingBufferStorage