You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Tabling #1871 while we get some implementation experience. Here are some options that we should try to get experience with:
Options:
Don't do anything (just keep the compositingAlphaMode: "opaque" we already have, which requires an alpha-clear and can't do so inside an existing render pass).
storeOp: "present" which takes away access immediately at the end of the render pass, and can either clear to 1 at the end of the pass (with a quad) or clear later. Can WebGPU canvas alpha be configured? #1425 (comment)
storeOp: "present" which ALWAYS clears to 1 at the end of the pass (regardless of platform), avoiding the extra tracking within command buffers to take away access.
An RGBX texture format that can be used for canvases, that must be used with loadop clear, and either (a) overrides (or validates) the alpha write mask to 0, or (b) overrides (or validates) the blend mode to always write 1.
Can have an alternate implementation that modifies the shader instead of the alpha write mask, for hardware that has performance issues with alpha mask (WebGL has seen issues with alpha write mask performance on Intel GPUs).
Allow unportable compositing results, but "good enough for security" (e.g. insert a blank extra compositor layer behind the canvas).
Tabling #1871 while we get some implementation experience. Here are some options that we should try to get experience with:
Options:
compositingAlphaMode: "opaque"we already have, which requires an alpha-clear and can't do so inside an existing render pass).storeOp: "present"which takes away access immediately at the end of the render pass, and can either clear to 1 at the end of the pass (with a quad) or clear later. Can WebGPU canvas alpha be configured? #1425 (comment)storeOp: "present"which ALWAYS clears to 1 at the end of the pass (regardless of platform), avoiding the extra tracking within command buffers to take away access.See: #1871, #1425