| commit | 1b3b29437f3f5f1bd371e8236853a72169a7c773 | [log] [tgz] |
|---|---|---|
| author | Antonio Maiorano <amaiorano@google.com> | Mon Oct 27 07:24:59 2025 -0700 |
| committer | Dawn LUCI CQ <dawn-scoped@luci-project-accounts.iam.gserviceaccount.com> | Mon Oct 27 07:24:59 2025 -0700 |
| tree | da3068de5bbb35a2716bba9115c2969497944307 | |
| parent | 0368e499eb97e4f6ac070749761e9949981259f5 [diff] |
tint/hlsl: add ArrayOffsetFromUniform transform ArrayOffsetFromUniform is a transform that adds an offset to storage buffer loads and stores provided via a uniform buffer. This will be used by the D3D12 backend to optimize root signature slot usage. Instead of binding dynamic storage buffers to root descriptors at the input dynamic offsets, these buffers will be bound in the root descriptor table, and the input dynamic offset stored in root constants. These offsets need to now be applied in the HLSL shader instead using this transform in a way very similar to ArrayLengthFromUniform. After this lands, I'll land the Dawn D3D12 backend changes that use this transform. Bug: 449703736 Change-Id: I19fb261070fecdccaa47323594ac2cec943fde63 Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/268496 Reviewed-by: James Price <jrprice@google.com> Commit-Queue: Antonio Maiorano <amaiorano@google.com>
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.