[dawn][opengl] Support combined samplers for binding_array The OpenGL backend needs to transform all of the uses of textures into combined samplers and textures. binding_array needs to be supported there by using multiple texture units per combined sampler if needed. Changes are: - In PipelineGL loop over the binding_array if needed when assigning texture units. - SizedBindingArrayTests are enabled on OpenGL. - Creation of the placeholder sampler in PipelineGL is changed to use the reentrant Device::CreateSampler which has a known default descriptor. - One of the binding array tests for oversized array in the BGL had the WGSL binding_array with the same size as the BGL which was not what was intended to be tested. - Adds a suppression for a test that's not passing on GL yet. - Adds a targeted test for the logic added in PipelineGL. Bug: 411573957 Change-Id: I8144c68466e8073144db9b222df2a9845b1d4f51 Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/252834 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Stephen White <senorblanco@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.