commit | 363b24834ff62f4172a8f1b49e97a1a686a32602 | [log] [tgz] |
---|---|---|
author | Sunny Sachanandani <sunnyps@chromium.org> | Wed Jun 05 04:06:34 2024 +0000 |
committer | Dawn LUCI CQ <dawn-scoped@luci-project-accounts.iam.gserviceaccount.com> | Wed Jun 05 04:06:34 2024 +0000 |
tree | 9a93ac7a6b0ce6f680078ab5aa41a295bfdb757f | |
parent | ac92078b096b7dc1c4595984c534a3474359fc5e [diff] |
d3d: Map Depth24PlusStencil8 to DXGI_FORMAT_D24_UNORM_S8_UINT WebGPU spec says that 24 bit depth can be mapped to a depth 24 unorm format[1]. When depth/stencil formats were initially implemented, all platforms defaulted to using D32_FLOAT_S8X24_UINT formats presumably due to their universal availability, but D3D has supported D24_UNORM_S8_UINT format since feature level 10.0[2] which covers all clients which we would like Dawn to support. Still put it behind a toggle since there's a difference in behavior with respect to clamping of the compare ref value when sampling from unorm vs float depth components with D3D. [1] https://www.w3.org/TR/webgpu/#24-bit-depth [2] https://learn.microsoft.com/en-us/windows/win32/direct3ddxgi/format-support-for-direct3d-feature-level-10-0-hardware#dxgi_format_d24_unorm_s8_uintfcs-45 Bug: 337980338, 341254292 Change-Id: I9a64de8afaffe820f24c61bf925445d3e23bc22e Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/188640 Reviewed-by: Austin Eng <enga@chromium.org> Commit-Queue: Sunny Sachanandani <sunnyps@chromium.org> Auto-Submit: Sunny Sachanandani <sunnyps@chromium.org>
Dawn is an open-source and cross-platform implementation of the WebGPU standard. More precisely it implements webgpu.h
that is a one-to-one mapping with the WebGPU IDL. Dawn is meant to be integrated as part of a larger system and is the underlying implementation of WebGPU in Chromium.
Dawn provides several WebGPU building blocks:
webgpu.h
version that Dawn implements.webgpu.h
.Helpful links:
Developer documentation:
User documentation: (TODO, figure out what overlaps with the webgpu.h docs)
BSD 3-Clause License, please see LICENSE.
This is not an officially supported Google product.