commit | d42a809e8c7411f665041e83403018127bce111c | [log] [tgz] |
---|---|---|
author | Takahiro <hogehoge@gachapin.jp> | Thu May 26 01:26:34 2022 +0000 |
committer | Dawn LUCI CQ <dawn-scoped@luci-project-accounts.iam.gserviceaccount.com> | Thu May 26 01:26:34 2022 +0000 |
tree | 0c46c077c43f4e1c89a9f02beef44d64586c2967 | |
parent | a09b0dbd8319c9b18b97ab6263f307bf76c6b6ac [diff] |
Record zero-attribute vertex buffer when creating render pipeline Currently Dawn ignores all zero-attribute vertex buffer in the given pipeline descriptor when creating RenderPipelineBase because zero-attribute vertex buffer is treated as unused slot, however the spec doesn't state that zero-attribute vertex buffer should be ignored. To support zero-attribute vertex buffer, this commit has the following changes. 1. Add VertexBufferNotUsed enum value to wgpu::VertexStepMode to represent unused slots 2. Ignore VertexBufferNotUsed step mode buffers when creating RenderPipelineBase and add tests to check it 3. Record zero-attribute vertex buffers when creating RenderPipelineBase and add tests to check it 4. Fix VertexStateTest::LastAllowedVertexBuffer broken by the above changes Temporarily we set the enum value of wgpu::VertexStepMode::VertexBufferNotUsed to 0 to pass the CTS tests because currently empty vertex buffer slots step mode can be zero-initialized. We will make a CL to Blink to explicitly set wgpu::VertexStepMode::VertexBufferNotUsed for empty slots and change the enum value to 2. Bug: dawn:1000 Change-Id: Ibd4ab87f2c922e8e460f2311547f13d58f1d5611 Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/89340 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Kokoro: Kokoro <noreply+kokoro@google.com> Commit-Queue: Takahiro <hogehoge@gachapin.jp>
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.