[wire] Separate the client Device alive state into lost and destroyed. - We separate the alive state on the client Device into two separate states to have a clear distinction between client-side versus server-side states. The destroyed state is always set as soon as the client-side calls device.Destroy(), whereas the lost state is only set once the lost callback has been called. This distinction will allow us to handle synchronous (buffer mapping) and asynchronous (pipeline creation) APIs differently when applicable. - This change also removes the check for Surfaces because the call is actually supposed to generate a validation error which can only happen by sending the command to the server right now. Bug: 521662708 Change-Id: I044f4ee1d667b9a4b7065af1e552e4d9ee84c864 Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/322595 Reviewed-by: Kai Ninomiya <kainino@chromium.org> Commit-Queue: Kai Ninomiya <kainino@chromium.org> Commit-Queue: Loko Kung <lokokung@google.com> Auto-Submit: 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.