commit | 05d8b02b0f49d46054105f21e388633562c201f7 | [log] [tgz] |
---|---|---|
author | Stephen White <senorblanco@chromium.org> | Tue Sep 13 19:48:51 2022 +0000 |
committer | Dawn LUCI CQ <dawn-scoped@luci-project-accounts.iam.gserviceaccount.com> | Tue Sep 13 19:48:51 2022 +0000 |
tree | 40b862411a3d54d580d076a821aadcd34a815eb7 | |
parent | 26ffcd17687ff59abccf3822aa0afb344c34e9b9 [diff] |
GLSL: implement host-visible memory padding. Since GLSL ES does not support the offset= attribute, struct members with explicit @align or @size attributes require adding explicit padding members. This in turn requires rewriting any constructor calls to initialize the new padding to zero, handled in the same transform. Note that this is currently overly-verbose, and will add padding where GLSL doesn't technically need it (e.g., padding a vec3 out to 16 bytes). Bug: tint:1415 Change-Id: Ia9ba513066a0e84f4c43247fcbbe02f5fadd6630 Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/101720 Reviewed-by: Ben Clayton <bclayton@google.com> Commit-Queue: Stephen White <senorblanco@chromium.org> Kokoro: Kokoro <noreply+kokoro@google.com>
Dawn is an open-source and cross-platform implementation of the work-in-progress 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)
(TODO)
Apache 2.0 Public License, please see LICENSE.
This is not an officially supported Google product.