On Wednesday, July 17, 2024 at 10:41:26 AM UTC+9 Domenic Denicola wrote:
This looks like a nice straightforward feature. Just one potential spec issue... On Tue, Jul 16, 2024 at 11:19 PM 'Christopher Cameron' via blink-dev < blink-dev@chromium.org> wrote: Hello blink-dev! This is the first feature from HDR canvas work that is ready to ship. It has been split off and reduced in scope from this wider feature <https://chromestatus.com/feature/5703719636172800>. Contact emailsccame...@chromium.org ExplainerNone Specificationhttps://www.w3.org/TR/webgpu/#gpucanvastonemappingmode I found the spec for the toneMapping member a bit confusing. I filed https://github.com/gpuweb/gpuweb/issues/4756 to ask questions about potentially getting it clarified. Upon further discussion in the issue, it became clear that I was confused because of my lack of familiarity with graphics / WebGPU APIs, and not because of anything inherently contradictory in the spec. (There's also a minor wordsmithing issue being discussed, but that's not blocking.) So, LGTM1. Design docs https://github.com/ccameron-chromium/webgpu-hdr/blob/main/EXPLAINER.md Summary Adds tone mapping parameters to the WebGPU canvas configuration, and adds options of "standard" (the current behavior of restricting content to the SDR range of the display) as the default, and "extended" (not imposing this restriction) as a new behavior. This allows WebGPU content to use the full range of a display. Blink componentBlink>WebGPU <https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3EWebGPU> Search tagsWebGPU <https://chromestatus.com/features#tags:WebGPU>, HDR <https://chromestatus.com/features#tags:HDR>, Canvas <https://chromestatus.com/features#tags:Canvas> TAG reviewNone TAG review statusNot applicable Risks Interoperability and Compatibility None. This feature has been developed with and reviewed by representatives of Mozilla and WebKit, and maps to mature APIs present on all platforms (except ChromeOS, where support is coming soon). *Gecko*: Positive (https://github.com/gpuweb/gpuweb/pull/4500) Approval does not automatically imply positive signal for Mozilla, but approver communicated that it does here (can file for signal if requested). *WebKit*: Positive (https://github.com/gpuweb/gpuweb/pull/4500) Approval implies positive signal for Safari, in WebGPU WG. *Web developers*: Positive (https://github.com/gpuweb/gpuweb/issues/4239# issuecomment-1935112593) Several requests have been made for this feature. *Other signals*: PR (https://github.com/gpuweb/gpuweb/pull/4500) reviewed by kdashg at Mozilla and mwyrzykowski at WebKit Ergonomics This maps directly to the platform APIs that are used for HDR video and image rendering, and should require almost no additional work to support. On some platforms, this maps directly to the exact underlying API, while on other platforms some conversion is required. Activation This can be used immediately by developers. Security This introduces no new security or privacy issues. 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. WebView does not current support this (because it does not support HDR images), but the support for both features will come simultaneously. Debuggability None Will this feature be supported on all six Blink platforms (Windows, Mac, Linux, ChromeOS, Android, and Android WebView)?No ChromeOS platform support for HDR images (and canvas) has not been completed. Is this feature fully tested by web-platform-tests <https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md> ?No Issues with testing the rendering of HDR (images, video, and now also canvas) is discussed at: https://github.com/web-platform-tests/wpt/issues/ 44320 Flag name on chrome://flagsNone Finch feature nameWebGPUHDR Requires code in //chrome?False Tracking bughttps://issues.chromium.org/issues/333967627 Adoption expectationFeature is currently being used by specific partners in prototypes. It is also used in internal features. Sample links https://ccameron-chromium.github.io/webgpu-hdr/example.html Estimated milestonesShipping on desktop128Shipping on Android128Shipping on WebView128 Anticipated spec changesThis was split off from a larger "HDR for all HTMLCanvasElement" spec. This feature is planned to be added to WebGL soon. Additional tone mapping modes are planned to be added as they are published. Link to entry on the Chrome Platform Statushttps://chromestatus.com/ feature/6196313866895360?gate=6588754021318656 Links to previous Intent discussionsIntent to prototype: https://groups. google.com/a/chromium.org/g/blink-dev/c/S609KGTkSSk/m/1EW4CWn3BgAJ -- 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 on the web visit https://groups.google.com/a/ chromium.org/d/msgid/blink-dev/CAGnfxj_Pss5f2sXWHB% 2BaxcqTfxxRBJctZ18xrv2Gd0Q-BaDGvg%40mail.gmail.com <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAGnfxj_Pss5f2sXWHB%2BaxcqTfxxRBJctZ18xrv2Gd0Q-BaDGvg%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 on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/af37791a-9371-4db3-9be9-ebfa65dab8abn%40chromium.org.