bors[bot] eeb9ead199 Merge #1547
1547: Don't merge stateless trackers from bind groups r=cwfitzgerald a=kvark

**Connections**
Hinted by @pythonesque on the matrix
Follow-up to #1417

**Description**
This is an optimization only.

When a bind group is used, we need to ensure two things:
  1. stateful usages are merged in (buffers and textures)
  2. other resources are help alive by the command buffer

We used to merge all of the states into the local trackers. However, the local tracker already
keeps a strong reference to the whole bind group, so the resources in it are not going away.
Therefore, we can skip having them separately in the local trackers.

**Testing**
Untested.


Co-authored-by: Dzmitry Malyshau <dmalyshau@mozilla.com>
2021-06-23 20:16:24 +00:00
2021-06-22 17:23:32 -04:00
2021-06-19 21:06:08 +03:00
2020-12-03 14:52:38 -05:00
2021-06-23 10:27:02 -07:00
2021-06-22 22:13:36 -04:00
2021-06-20 16:13:53 +00:00
2021-06-02 21:31:02 -04:00
2021-06-21 01:32:24 -02:30
2021-06-12 01:04:15 -04:00
2021-06-18 21:38:54 +00:00
2021-06-18 13:40:31 -04:00
2021-06-18 13:40:31 -04:00
2020-03-03 00:10:04 -03:30
2021-06-16 20:28:45 -04:00
2020-04-06 08:55:39 -04:00

wgpu

Matrix Matrix Build Status codecov.io

This is an implementation of WebGPU API in Rust, targeting both native and the Web. See the upstream WebGPU specification (work in progress).

The repository hosts the following parts:

  • Crates.io docs.rs - public Rust API for users
  • Crates.io docs.rs - internal Rust API for WebGPU implementations to use
  • Crates.io docs.rs - internal unsafe GPU abstraction API
  • Crates.io docs.rs - Rust types shared between wgpu-core and wgpu-rs
  • player - standalone application for replaying the API traces, uses winit

Rust examples can be found at wgpu/examples. wgpu is a default member, so you can run the examples directly from the root, e.g. cargo run --example boids.

If you are looking for the native implementation or bindings to the API in other languages, you need wgpu-native.

Supported Platforms

API Windows 7/10 Linux & Android macOS & iOS
DX11
DX12
Vulkan
Metal
GLes3

= Primary support — 🆗 = Secondary support — 🚧 = Unsupported, but support in progress

Description
No description provided
Readme 137 MiB
Languages
Rust 79.9%
WGSL 16.2%
HLSL 2%
GLSL 1.7%
JavaScript 0.2%