Vulkan: Track and set dynamic state If the vulkan_use_extended_dynamic_state toggle is enabled, tracks several render pipeline properties and sets them dynamically when the pipeline is bound. Specifically tracks the following states: - Primitive Topology - Cull Mode - Front Face - Depth Test Enabled - Depth Write Enabled - Depth Compare Op - Stencil Test Enabled - Stencil Op Does make some effort to ensure that the Vulkan blob cache can be hit more often when dynamic state is used, but more could be done to improve caching. Bug: 463893795 Change-Id: Ic63a71f39d6fd1dba89e077e5b586b81ddb3b650 Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/299317 Auto-Submit: Brandon Jones <bajones@chromium.org> Reviewed-by: Kyle Charbonneau <kylechar@google.com> Reviewed-by: Corentin Wallez <cwallez@chromium.org> Commit-Queue: Brandon Jones <bajones@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.