commit | e56a69d5d4f416571b3c9e1d659df75e1b7a0d1e | [log] [tgz] |
---|---|---|
author | Corentin Wallez <cwallez@chromium.org> | Fri Sep 20 14:53:59 2024 +0000 |
committer | Dawn LUCI CQ <dawn-scoped@luci-project-accounts.iam.gserviceaccount.com> | Fri Sep 20 14:53:59 2024 +0000 |
tree | d8df922228bfa0c1bea75e255a20732f9a5d6826 | |
parent | aebc7be46ec601333832bc14256242f3280bbbd1 [diff] |
SwapChainVk: Add frame pacing by waiting on previous rendering on images Vulkan doesn't guarantee any frame pacing on its own even if a number of drivers do it internally. This means that many rendering + present can be in flight at the same time, making the mouse-to-screen latency terrible. This adds frame pacing in a simple way by waiting on the previous call to vkAcquireNextImageKHR on the same image to be complete before returning from GetCurrentTexture. Bug: 42241496 Change-Id: I01d3a1b69cc8f86f01c384c0a1d38400d4f01790 Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/206574 Reviewed-by: Geoff Lang <geofflang@google.com> Auto-Submit: Corentin Wallez <cwallez@chromium.org> Commit-Queue: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Loko Kung <lokokung@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.