On 6/4/25 3:41 AM, 'François Beaufort' via blink-dev wrote:


  Contact emails

fbeauf...@google.com <mailto:fbeauf...@google.com>


        Explainer

The "texture-compression-bc-sliced-3d" and "texture-compression-astc-sliced-3d" WebGPU features add respectively support for 3D textures using Block Compression (BC) and Adaptive Scalable Texture Compression (ASTC) formats. This lets developers leverage the efficient compression capabilities of BC and ASTC formats for volumetric texture data, offering significant reductions in memory footprint and bandwidth requirements without substantial loss in visual quality.


This is particularly valuable in fields such as scientific visualization, medical imaging, and advanced rendering techniques.

By exposing those capabilities as WebGPU features, developers can explicitly check for support and provide fallback solutions or alternative rendering paths when necessary.


        Specification

https://gpuweb.github.io/gpuweb/#texture-compression-bc-sliced-3d <https://gpuweb.github.io/gpuweb/#texture-compression-bc-sliced-3d>

https://gpuweb.github.io/gpuweb/#texture-compression-astc-sliced-3d <https://gpuweb.github.io/gpuweb/#texture-compression-astc-sliced-3d>

At the risk of asking a silly question: the spec talks about "BC compressed formats" and "ASTC compressed formats", but as a non-expert I don't know where to go to learn more abut them. Is there some kind of normative reference for what that means (I don't see any hyperlinks)? Are there hidden interop challenges here, or does all the tooling that might produce these things just work™?


        Summary

Functionality added to the WebGPU spec after its first shipment in a browser.


The “texture-compression-bc-sliced-3d” and “texture-compression-astc-sliced-3d” WebGPU features add respectively 3D texture support for BC and ASTC compressed formats.


        Blink component

Blink>WebGPU <https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3EWebGPU>


        TAG review

None


        TAG review status

Not applicable


        Risks



        Interoperability and Compatibility

This feature has not yet been implemented in any browser. It has been approved by the GPU for the Web Community Group, with representatives from Chrome, Firefox, and Safari. See minutes at

https://github.com/gpuweb/gpuweb/wiki/GPU-Web-2024-07-10#consider-moving-sliced-3d-compressed-bc-texture-to-an-extension-4705 <https://github.com/gpuweb/gpuweb/wiki/GPU-Web-2024-07-10#consider-moving-sliced-3d-compressed-bc-texture-to-an-extension-4705>and https://github.com/gpuweb/gpuweb/wiki/GPU-Web-2024-07-24#discussapprove-small-details-of-add-texture-compression-bc-sliced-3d-4763 <https://github.com/gpuweb/gpuweb/wiki/GPU-Web-2024-07-24#discussapprove-small-details-of-add-texture-compression-bc-sliced-3d-4763>


Gecko: No signal (Mozilla members have requested during weekly standardization meetings that we postpone filing standard positions until we reach Candidate Recommendation (CR) status in Q4.) https://github.com/mozilla/standards-positions/issues/1205 <https://github.com/mozilla/standards-positions/issues/1205>


WebKit: Positive (https://github.com/WebKit/standards-positions/issues/294#issuecomment-1877411933 <https://github.com/WebKit/standards-positions/issues/294#issuecomment-1877411933>)


Web developers: Positive (https://github.com/gpuweb/gpuweb/issues/3183 <https://github.com/gpuweb/gpuweb/issues/3183>)


Other signals:


        WebView application risks

Does this intent deprecate or change behavior of existing APIs, such that it has potentially high risk for Android WebView-based applications?

None



        Debuggability

None


        Will this feature be supported on all six Blink platforms
        (Windows, Mac, Linux, ChromeOS, Android, and Android WebView)?

No

All platforms will eventually have support. Will immediately be available on Android, Android WebView, ChromeOS, Mac, and Windows, since those platforms already support WebGPU. Linux is planned to have WebGPU support in the future, so this feature will become available when WebGPU does.


        Is this feature fully tested by web-platform-tests
        
<https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md>?

Yes

WebGPU/WGSL have a conformance test suite (https://github.com/gpuweb/cts <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 https://github.com/gpuweb/cts/issues/3761 <https://github.com/gpuweb/cts/issues/3761>and https://github.com/gpuweb/cts/issues/3967 <https://github.com/gpuweb/cts/issues/3967>


        Flag name on chrome://flags

Enable Unsafe WebGPU


        Finch feature name

WebGPU.Enabled:UnsafeFeatures


        Requires code in //chrome?

False


        Tracking bug

https://issues.chromium.org/issues/342840940 <https://issues.chromium.org/issues/342840940>


        Sample links

https://webgpu.github.io/webgpu-samples/?sample=volumeRenderingTexture3D <https://webgpu.github.io/webgpu-samples/?sample=volumeRenderingTexture3D>


        Estimated milestones

Shipping on desktop

        

139

Shipping on Android

        

139


        Anticipated spec changes

Open questions about a feature may be a source of future web compat or interop issues. Please list open issues (e.g. links to known github issues in the project for the feature specification) whose resolution may introduce web compat/interop risk (e.g., changing to naming or structure of the API in a non-backward-compatible way).

None


        Link to entry on the Chrome Platform Status


        https://chromestatus.com/feature/5080855386783744?gate=6225340422422528
        
<https://chromestatus.com/feature/5080855386783744?gate=6225340422422528>



This intent message was generated by Chrome Platform Status <https://chromestatus.com/>.
--
You received this message because you are subscribed to the Google Groups "blink-dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+unsubscr...@chromium.org. To view this discussion visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAPpwU5LuwN_2tbzyy6W17sn8YZ8oOGYQR-Cfe7P4uka3BQdHuA%40mail.gmail.com <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAPpwU5LuwN_2tbzyy6W17sn8YZ8oOGYQR-Cfe7P4uka3BQdHuA%40mail.gmail.com?utm_medium=email&utm_source=footer>.

--
You received this message because you are subscribed to the Google Groups 
"blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to blink-dev+unsubscr...@chromium.org.
To view this discussion visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/89415cee-8303-4cc8-a5e3-a004cd5d1c53%40chromium.org.

Reply via email to