← Back to release summary

WebGPU: GPUTextureView for externalTexture binding

Category
Miscellaneous
Type
New or changed feature
Status
Proposed (Chrome Proposed)
Intent stage
None

WPT details: WebGPU/WGSL have a conformance test suite (https://github.com/gpuweb/cts) that is regularly pulled into Chromium and part of the testing of Dawn/Tint in Chromium. While the CTS can be embedded in WPT, the WebGPU team opted to keep it separate in Chromium testing to use a customized harness for robustness and performance. All the tests about this feature in WebGPU CTS can be found through the below links: https://github.com/gpuweb/cts/pull/4304 and https://github.com/gpuweb/cts/pull/4306

Summary

Functionality added to the WebGPU spec after its first shipment in a browser. A GPUTextureView is now allowed to be used for an externalTexture binding when creating a GPUBindGroup.

Motivation

Some developers using WebGPU for video effects pipelines have proposed allowing a compatible GPUTextureView (2D, single subresource) to be used in place of a GPUExternalTexture binding. This would simplify their shader logic, which currently needs to handle both GPUExternalTexture (for source video) and GPUTextureView (for intermediate processing) and reduce the need to dynamically compile shaders depending on where the texture comes from. https://github.com/gpuweb/gpuweb/pull/5079

Standards & signals

Ecosystem

View on chromestatus.com