This is an implementation of WebGPU API in Rust, targeting both native and the Web. It's written in Rust and is based on gfx-hal with help of gpu-alloc and gpu-descriptor. See the upstream WebGPU specification (work in progress).
The repository hosts the following parts:
- public Rust API for users
- internal Rust API for WebGPU implementations to use
- Rust types shared between
wgpu-coreandwgpu-rsplayer- standalone application for replaying the API traces, useswinit
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.
| API | Windows 7/10 | Linux & Android | macOS & iOS |
|---|---|---|---|
| DX11 | π | ||
| DX12 | β | ||
| Vulkan | β | β | |
| Metal | β | ||
| GL ES3 | π§ |
β = Primary support β π = Secondary support β π§ = Unsupported, but support in progress
