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.

Reply via email to